

`define DEVICE_ECP5U

`timescale 1ns/100ps

module Scaler (
               clk,
               rstn,
               frmsync_in,
               dvalid_in,
               din,
               ready,
               pclk,
               pwrite,
               paddr,
               pwdat,
               prdat,
               dout_enable,
               frmsync_out,
               dvalid_out,
               dout
        );

   input             clk;
   input             rstn;
   input             frmsync_in;
   input             dvalid_in;
   input  [24-1:0]   din;
   output            ready;
   input             pclk;
   input             pwrite;
   input  [5-1:0]    paddr;
   input  [32-1:0]   pwdat;
   output [32-1:0]   prdat;
   input             dout_enable;
   output            frmsync_out;
   output            dvalid_out;
   output [24-1:0]   dout;

scaler_core_Scaler #(
               .SCALER_NAME   ("Scaler"   ),
               .NUM_PLANE     (3     ),
               .VINWIDTH      (1920      ),
               .VINHEIGHT     (1080     ),
               .VOUTWIDTH     (1920     ),
               .VOUTHEIGHT    (1080    ),
               .KERNEL        ("BICUBIC"        ),
               .VFTAPS        (4        ),
               .HFTAPS        (4        ),
               .VFPHASES      (16      ),
               .HFPHASES      (16      ),
               .EDGEMODE      ("COPY"      ),
               .EDGEVALUE     (0     ),
               .VSFACTOR      (2048      ),
               .HSFACTOR      (2048      ),
               .VFCWIDTH      (22      ),
               .VFCBPWIDTH    (11    ),
               .HFCWIDTH      (22      ),
               .HFCBPWIDTH    (11    ),
               .PARALLEL      ("TRUE"      ),
               .YCBCR422      ("FALSE"      ),
               .YCBCR444      ("FALSE"      ),
               .ADAPTIVE      ("FALSE"      ),
               .CBANKS        (1        ),
               .EDGE_TH       (8       ),
               .DYNAMIC       ("TRUE"       ),
               .SEPPCLK       ("TRUE"       ),
               .RESAMPLE      ("NEAREST"      ),
               .DWIDTH        (8        ),
               .CWIDTH        (12        ),
               .MOUTWIDTH     (8     ),
               .DOUTWIDTH     (8     ),
               .DTYPE         ("UNSIGNED"         ),
               .CTYPE         ("SIGNED"         ),
               .OTYPE         ("UNSIGNED"         ),
               .DIN_POINTS    (0    ),
               .COEFF_POINTS  (11  ),
               .DOUT_POINTS   (0   ),
               .MSB_METHOD    ("SATURATION"    ),
               .LSB_METHOD    ("NORMAL"    ),
               .LBUFFER       ("EBR"       ),
               .VCBUFFER      ("PFU"      ),
               .HCBUFFER      ("PFU"      ),
               .SHARE_CMEM    ("FALSE"    ),
               .MULTTYPE      ("DSP"      ),
               .HIGHSPEED     ("FALSE"     ),
               .PADDRWIDTH    (5    ),
               .PBUSWIDTH     (32     ),
               .FAMILY        ("ECP5U"        ))
u1_core (
               .clk(clk),
               .rstn(rstn),
               .ce(1'b1),
               .sr(1'b0),
               .dvalid_in(dvalid_in),
               .frmsync_in(frmsync_in),
               .din(din),
               .ready(ready),
               .frm_resync( ),
               .pclk(pclk),
               .pwrite(pwrite),
               .paddr(paddr),
               .pwdat(pwdat),
               .prdat(prdat),
               .fwidth_out( ),
               .fheight_out( ),
               .dout_enable(dout_enable),
               .frmsync_out(frmsync_out),
               .dvalid_out(dvalid_out),
               .dout(dout)
    );

endmodule
// obf_with_line.v generated by Lattice IP Model Creator version 1
// created on Mon May  4 09:45:27 CST 2015
// Copyright(c) 2007 Lattice Semiconductor Corporation. All rights reserved
// obfuscator_exe version 1.mar0807
// top
module ald9e66_Scaler(
              
              clk,
              rstn,
              ce,
              sr,
              mg346eb,
              qia3758,
              pu1bac0,
              din,
              
              dvalid_out,
              fa580fa,
              fac07d3,
              dout
              );
parameter DWIDTH           = 12;
parameter icfa6b0    = "SATURATION";
parameter uvd3581    = "TRUNCATION";
parameter oh9ac0c         = "UNSIGNED";
parameter ald6065        = "UNSIGNED";
parameter lfb032c        = 0;
parameter lf81966          = 0;
parameter rvcb37       = 0;
parameter DOUTWIDTH        = 32;
parameter qv2cdfc        = 5;
parameter tu66fe4          = "TRUE";
parameter tj37f23         = 1;
localparam xlbf91e = ((DWIDTH==DOUTWIDTH && rvcb37==(lfb032c+lf81966)) && !(oh9ac0c=="SIGNED" && ald6065=="UNSIGNED")) ? 0 : 1;
localparam hbdd79c = (rvcb37 < lfb032c+lf81966) ? lfb032c+lf81966-rvcb37 : 0;
localparam qtdcca0  = 24;
localparam nre6504 = (oh9ac0c == "UNSIGNED") ? DWIDTH-hbdd79c : DWIDTH-hbdd79c+1;
localparam ir36f9d = (nre6504+qtdcca0-1)/qtdcca0;
localparam ie9d8ae = (hbdd79c == 0 || uvd3581 == "TRUNCATION") ? 1 : 0;
localparam qi15c39 = ((icfa6b0 == "WRAP_AROUND") && !(oh9ac0c == "SINGED" && ald6065 == "UNSIGNED")) ? 1 : 0;
localparam oh39129 = (xlbf91e==0) ? 0 :                    (ie9d8ae==1 && qi15c39==1) ? 0 :                    (ie9d8ae==1 && qi15c39==0) ? 1 :                    (ie9d8ae==0 && qi15c39==1) ? ir36f9d+1 : ir36f9d+2;
localparam vie1399 = (tj37f23 == 0) ? oh39129 : oh39129+1;
input                       clk;
input                       rstn;
input                       ce;
input                       sr;
input[DWIDTH-1:0]           din;
output[DOUTWIDTH-1:0]       dout;
input                       mg346eb;
input                       qia3758;
input[qv2cdfc-1:0]        pu1bac0;
output                      dvalid_out;
output                      fa580fa;
output[qv2cdfc-1:0]       fac07d3;
reg[vie1399-1:0]             tw8cbd4;
reg[vie1399-1:0]             ng2f51c;
reg[qv2cdfc-1:0]          wwd4714[0:vie1399-1];
genvar tj1c509;
reg ofe284f;
reg do1427d;
reg mta13eb;
reg ph9f5d;
reg [qv2cdfc - 1 : 0] me7d77e;
reg [DWIDTH - 1 : 0] lq5df83;
reg [vie1399 - 1 : 0] vv7e0d1;
reg [vie1399 - 1 : 0] ng83478;
reg [2047:0] ec1a3c3;
wire [7:0] sud1e18;
localparam yz8f0c0 = 8,su78605 = 32'hfdfff40b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0) begin      tw8cbd4 <= {vie1399{1'b0}};      ng2f51c <= {vie1399{1'b0}};   end else if (ofe284f == 1'b1) begin      if (do1427d == 1'b1) begin         tw8cbd4 <= {vie1399{1'b0}};         ng2f51c <= {vie1399{1'b0}};      end else begin         tw8cbd4 <= {vv7e0d1[vie1399-1:0],mta13eb};         ng2f51c <= {ng83478[vie1399-1:0],ph9f5d};      end   end
end
generate
for (tj1c509=0;tj1c509<vie1399;tj1c509=tj1c509+1) begin:pfd75d0   always @(posedge clk or negedge rstn)   begin      if (rstn == 1'b0) begin         wwd4714[tj1c509] <= {qv2cdfc{1'b0}};      end else if (ofe284f == 1'b1) begin         if (do1427d == 1'b1) begin            wwd4714[tj1c509] <= {qv2cdfc{1'b0}};         end else begin            if (tj1c509==0) begin               wwd4714[tj1c509] <= me7d77e;            end else begin               wwd4714[tj1c509] <= wwd4714[tj1c509-1];            end         end      end   end
end
endgenerate
generate
begin   if (vie1399 == 0) begin      assign dvalid_out = mta13eb;      assign fa580fa = ph9f5d;      assign fac07d3 = me7d77e;   end else begin      assign dvalid_out  = vv7e0d1[vie1399-1];      assign fa580fa = ng83478[vie1399-1];      assign fac07d3 = wwd4714[vie1399-1];   end
end
endgenerate
qvbed00_Scaler #(.DWIDTH         (DWIDTH       ),        .DOUTWIDTH      (DOUTWIDTH    ),        .xlbf91e  (xlbf91e),        .uvd3581  (uvd3581),        .icfa6b0  (icfa6b0),        .qtdcca0          (qtdcca0        ),        .lfb032c      (lfb032c    ),        .lf81966        (lf81966      ),        .rvcb37     (rvcb37   ),        .oh9ac0c       (oh9ac0c     ),        .ald6065      (ald6065    ),        .tu66fe4        (tu66fe4      ),        .tj37f23       (tj37f23     ))
wwfab25(        .rstn    (rstn    ),        .clk     (clk     ),        .ce      (ofe284f      ),        .sr      (do1427d      ),        .din     (lq5df83     ),        .dout    (dout   ));
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];mta13eb<=sud1e18[2];ph9f5d<=sud1e18[3];me7d77e<={pu1bac0>>1,sud1e18[4]};lq5df83<={din>>1,sud1e18[5]};vv7e0d1<={tw8cbd4>>1,sud1e18[6]};ng83478<={ng2f51c>>1,sud1e18[7]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=mg346eb;ec1a3c3[2044]<=qia3758;ec1a3c3[2040]<=pu1bac0[0];ec1a3c3[2032]<=din[0];ec1a3c3[2016]<=tw8cbd4[0];ec1a3c3[1984]<=ng2f51c[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module ofc6cbc_Scaler (
               rstn,
               clk,
               ce,
               sr,
               nee4a89,
               ri2544a,
               dout
            );
parameter   DWIDTH   = 32;
parameter   DTYPE    = "UNSIGNED";
parameter   qtdcca0    = 16;
localparam  go53557     = 1'b1;
localparam  gd9aab8    = 1'b0;
localparam  ned55c5   = DWIDTH+1;
localparam  ps5715f     = (DWIDTH+qtdcca0-1)/qtdcca0;
localparam  pf5f4d1    = DWIDTH%qtdcca0;
input                   rstn;
input                   clk;
input                   ce;
input                   sr;
input [DWIDTH-1:0]      nee4a89;
input [DWIDTH-1:0]      ri2544a;
output[ned55c5-1:0]      dout;
wire[qtdcca0*ps5715f-1:0]    osd4690;
wire[qtdcca0*ps5715f-1:0]    thd2040;
genvar gd90206,tj1c509,mt81ae;
reg             zx40d74[0:ps5715f] ;
wire[qtdcca0-1:0] anae9f3[0:ps5715f-1];
wire[qtdcca0-1:0] ec3e77b[0:ps5715f-1];
reg [qtdcca0-1:0] uief670[0:ps5715f-1][0:ps5715f-1] ;
reg [qtdcca0-1:0] mr701e1[0:ps5715f-1][0:ps5715f-1] ;
reg [qtdcca0-1:0] zke1964[0:ps5715f-1][0:ps5715f-1] ;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] ux1793f;
reg [DWIDTH - 1 : 0] fae4fe9;
reg [qtdcca0 * ps5715f - 1 : 0] wjfd2ba;
reg [qtdcca0 * ps5715f - 1 : 0] by5753e;
reg [2047:0] ec1a3c3;
wire [5:0] sud1e18;
localparam yz8f0c0 = 6,su78605 = 32'hfdffc68b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
assign osd4690 = pf5f4d1==0 ? ux1793f : DTYPE=="SIGNED" ? {{(qtdcca0-pf5f4d1){ux1793f[DWIDTH-1]}},ux1793f}:                                {{(qtdcca0-pf5f4d1){gd9aab8}},ux1793f};
assign thd2040 = pf5f4d1==0 ? fae4fe9 : DTYPE=="SIGNED" ? {{(qtdcca0-pf5f4d1){fae4fe9[DWIDTH-1]}},fae4fe9}:                                {{(qtdcca0-pf5f4d1){gd9aab8}},fae4fe9};
generate
begin   for (gd90206=0;gd90206<ps5715f;gd90206=gd90206+1) begin:fc99412      assign anae9f3[gd90206] = wjfd2ba[qtdcca0*(gd90206+1)-1:qtdcca0*gd90206];      assign ec3e77b[gd90206] = by5753e[qtdcca0*(gd90206+1)-1:qtdcca0*gd90206];      for (tj1c509=0;tj1c509<gd90206;tj1c509=tj1c509+1) begin:hbc2efa         always @(posedge clk or negedge rstn)         begin            if (rstn == gd9aab8) begin               uief670[gd90206][tj1c509] <= {qtdcca0{gd9aab8}};               mr701e1[gd90206][tj1c509] <= {qtdcca0{gd9aab8}};            end else if (ofe284f == go53557) begin               if (do1427d) begin                  uief670[gd90206][tj1c509] <= {qtdcca0{gd9aab8}};                  mr701e1[gd90206][tj1c509] <= {qtdcca0{gd9aab8}};               end else begin                  uief670[gd90206][tj1c509] <= tj1c509==0 ? anae9f3[gd90206] : uief670[gd90206][tj1c509-1];                  mr701e1[gd90206][tj1c509] <= tj1c509==0 ? ec3e77b[gd90206] : mr701e1[gd90206][tj1c509-1];               end            end         end      end      if (gd90206 == ps5715f-1) begin         always @(posedge clk or negedge rstn)         begin            if (rstn == gd9aab8)               {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= {(qtdcca0+1){gd9aab8}};            else if (ofe284f == go53557) begin               if (do1427d == go53557)                  {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= {(qtdcca0+1){gd9aab8}};               else if (DTYPE == "UNSIGNED")                  {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= gd90206==0 ?  anae9f3[0]+ec3e77b[0]+1'b0 :                              uief670[gd90206][gd90206-1]+mr701e1[gd90206][gd90206-1]+zx40d74[gd90206-1];               else                  {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= gd90206==0 ?  {anae9f3[0][qtdcca0-1],anae9f3[0]}+{ec3e77b[0][qtdcca0-1],ec3e77b[0]}+1'b0 :                              {uief670[gd90206][gd90206-1][qtdcca0-1],uief670[gd90206][gd90206-1]}+{mr701e1[gd90206][gd90206-1][qtdcca0-1],mr701e1[gd90206][gd90206-1]}+zx40d74[gd90206-1];            end         end      end else begin         always @(posedge clk or negedge rstn)         begin            if (rstn == gd9aab8)               {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= {(qtdcca0+1){gd9aab8}};            else if (ofe284f == go53557) begin               if (do1427d == go53557)                  {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= {(qtdcca0+1){gd9aab8}};               else                  {zx40d74[gd90206],zke1964[gd90206][gd90206]} <= gd90206==0 ?  anae9f3[0]+ec3e77b[0]+1'b0 :                           uief670[gd90206][gd90206-1]+mr701e1[gd90206][gd90206-1]+zx40d74[gd90206-1];            end         end      end      for (tj1c509=gd90206+1;tj1c509<ps5715f;tj1c509=tj1c509+1) begin:ux1244a         always @(posedge clk or negedge rstn)         begin            if (rstn == gd9aab8)               zke1964[gd90206][tj1c509] <= {(qtdcca0+1){gd9aab8}};            else if (ofe284f == go53557) begin               if (do1427d == go53557)                  zke1964[gd90206][tj1c509] <= {(qtdcca0+1){gd9aab8}};               else                  zke1964[gd90206][tj1c509] <= zke1964[gd90206][tj1c509-1];            end         end      end   end   if (pf5f4d1 == 0) begin      for (gd90206=0;gd90206<ps5715f;gd90206=gd90206+1) begin:uv7537e         assign dout[qtdcca0*(gd90206+1)-1:qtdcca0*gd90206] = zke1964[gd90206][ps5715f-1];      end      assign dout[ned55c5-1] = zx40d74[ps5715f-1];   end else begin      for (gd90206=0;gd90206<ps5715f-1;gd90206=gd90206+1) begin:ea6247e         assign dout[qtdcca0*(gd90206+1)-1:qtdcca0*gd90206] = zke1964[gd90206][ps5715f-1];      end      assign dout[ned55c5-1:ned55c5-pf5f4d1-1] = zke1964[ps5715f-1][ps5715f-1][pf5f4d1:0];   end
end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];ux1793f<={nee4a89>>1,sud1e18[2]};fae4fe9<={ri2544a>>1,sud1e18[3]};wjfd2ba<={osd4690>>1,sud1e18[4]};by5753e<={thd2040>>1,sud1e18[5]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=nee4a89[0];ec1a3c3[2044]<=ri2544a[0];ec1a3c3[2040]<=osd4690[0];ec1a3c3[2032]<=thd2040[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module ps58ba0_Scaler (rstn,
               clk,
               ce,
               sr,
               nee4a89,
               ri2544a,
               dout
            );
parameter   DWIDTH   = 32;
parameter   DTYPE    = "SIGNED";
localparam  ned55c5   = DWIDTH+1;
input                   rstn;
input                   clk;
input                   ce;
input                   sr;
input [DWIDTH-1:0]      nee4a89;
input [DWIDTH-1:0]      ri2544a;
output[ned55c5-1:0]      dout;
reg   [ned55c5-1:0]      dout;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] ux1793f;
reg [DWIDTH - 1 : 0] fae4fe9;
reg [2047:0] ec1a3c3;
wire [3:0] sud1e18;
localparam yz8f0c0 = 4,su78605 = 32'hfdffc68b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
always @(posedge clk or negedge rstn)
begin   if (!rstn)      dout <= {(DWIDTH+1){1'b0}};   else if(ofe284f) begin      if (do1427d)         dout <= {(DWIDTH+1){1'b0}};      else if (DTYPE == "SIGNED")         dout <= {ux1793f[DWIDTH-1],ux1793f}+{fae4fe9[DWIDTH-1],fae4fe9};      else         dout <= {1'b0,ux1793f}+{1'b0,fae4fe9};   end
end
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];ux1793f<={nee4a89>>1,sud1e18[2]};fae4fe9<={ri2544a>>1,sud1e18[3]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=nee4a89[0];ec1a3c3[2044]<=ri2544a[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module qvbed00_Scaler(
             
             clk,
             rstn,
             ce,
             sr,
             din,
             
             dout
             );
parameter DWIDTH           = 12;
parameter DOUTWIDTH        = 32;
parameter xlbf91e    = 1;
parameter uvd3581    = "NORMAL";
parameter icfa6b0    = "SATURATON";
parameter qtdcca0            = 24;
parameter lfb032c        = 0;
parameter lf81966          = 0;
parameter rvcb37       = 0;
parameter oh9ac0c         = "SIGNED";
parameter ald6065        = "SIGNED";
parameter tu66fe4          = "TRUE";
parameter tj37f23         = 0;
localparam hbdd79c = (rvcb37 < lfb032c+lf81966) ? lfb032c+lf81966-rvcb37 : 0;
localparam kf179ec = (hbdd79c == 0) ? DWIDTH :                       (uvd3581 == "TRUNCATION") ? DWIDTH-hbdd79c :                       (oh9ac0c == "UNSIGNED") ? DWIDTH-hbdd79c+1 : DWIDTH-hbdd79c+2;
localparam ned55c5 = (rvcb37>=(lfb032c+lf81966)) ? (DOUTWIDTH+lfb032c+lf81966-rvcb37) :                        ((DOUTWIDTH>(DWIDTH-hbdd79c)) ? (DWIDTH-hbdd79c) : DOUTWIDTH);
localparam nre6504 = (oh9ac0c == "UNSIGNED") ? DWIDTH-hbdd79c : DWIDTH-hbdd79c+1;
localparam ir36f9d = (nre6504+qtdcca0-1)/qtdcca0;
input                       clk;
input                       rstn;
input                       ce;
input                       sr;
input[DWIDTH-1:0]           din;
output [DOUTWIDTH-1:0]      dout;
wire[kf179ec-1:0]         cz6a135;
reg[DWIDTH-1:0]             lf84d66;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] lq5df83;
reg [kf179ec - 1 : 0] jebd61e;
reg [DWIDTH - 1 : 0] xw58792;
reg [2047:0] ec1a3c3;
wire [4:0] sud1e18;
localparam yz8f0c0 = 5,su78605 = 32'hfdffca8b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
generate
begin   if (tj37f23 == 1) begin      always @(posedge clk or negedge rstn)      begin         if (rstn == 1'b0) begin            lf84d66 <= {DWIDTH{1'b0}};         end else if (ofe284f == 1'b1) begin            if (do1427d == 1'b1) begin               lf84d66 <= {DWIDTH{1'b0}};            end else if(tu66fe4=="TRUE") begin               if(oh9ac0c=="SIGNED") begin                  lf84d66 <= lq5df83 + {{lf81966{lq5df83[DWIDTH-1]}},lq5df83[DWIDTH-1:lf81966]};               end else begin                  lf84d66 <= lq5df83 + {{lf81966{1'b0}},lq5df83[DWIDTH-1:lf81966]};               end            end else begin               lf84d66 <= lq5df83;            end         end      end   end else begin      always @(*) begin         lf84d66 <= lq5df83;      end   end
end
endgenerate
jce1cee_Scaler #(.DWIDTH         (DWIDTH       ),            .ned55c5         (kf179ec    ),            .uvd3581  (uvd3581),            .hbdd79c      (hbdd79c    ),            .qtdcca0          (qtdcca0        ),            .oh9ac0c       (oh9ac0c     ))     ksa32e5 (            .rstn    (rstn     ),            .clk     (clk      ),            .ce      (ofe284f       ),            .sr      (do1427d       ),            .din     (xw58792      ),            .dout    (cz6a135 ));
alf26d6_Scaler #(.DWIDTH         (kf179ec    ),            .ned55c5         (ned55c5       ),            .jrb559d      (DWIDTH       ),            .DOUTWIDTH      (DOUTWIDTH    ),            .xlbf91e  (xlbf91e),            .uvd3581  (uvd3581),            .icfa6b0  (icfa6b0),            .hbdd79c      (hbdd79c    ),            .lfb032c      (lfb032c    ),            .lf81966        (lf81966      ),            .rvcb37     (rvcb37   ),            .oh9ac0c       (oh9ac0c     ),            .ald6065      (ald6065    ))     ba1b67f (            .rstn    (rstn     ),            .clk     (clk      ),            .ce      (ofe284f       ),            .sr      (do1427d       ),            .din     (jebd61e ),            .dout    (dout    ));
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};jebd61e<={cz6a135>>1,sud1e18[3]};xw58792<={lf84d66>>1,sud1e18[4]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=cz6a135[0];ec1a3c3[2040]<=lf84d66[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module jce1cee_Scaler(
                 
                 clk,
                 rstn,
                 ce,
                 sr,
                 din,
                 
                 dout
                 );
parameter DWIDTH         = 12;
parameter ned55c5         = 12;
parameter uvd3581  = "TRUNCATION";
parameter hbdd79c      = 3;
parameter oh9ac0c       = "SIGNED";
parameter qtdcca0          = 24;
localparam  nre6504 = (oh9ac0c == "UNSIGNED") ? DWIDTH-hbdd79c : DWIDTH-hbdd79c+1;
input               clk;
input               rstn;
input               ce;
input               sr;
input[DWIDTH-1:0]   din;
output[ned55c5-1:0]  dout;
reg                 ea78c7b;
wire                ofc63d9;
wire[nre6504-1:0] wl8f669;
reg[nre6504-1:0] wjd9a6f;
reg[nre6504-1:0] nee4a89;
reg[nre6504-1:0] ri2544a;
wire[ned55c5-1:0]    dout;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] lq5df83;
reg ip5eecb;
reg enf765d;
reg [nre6504 - 1 : 0] kdd976d;
reg [nre6504 - 1 : 0] tu5db68;
reg [nre6504 - 1 : 0] ux1793f;
reg [nre6504 - 1 : 0] fae4fe9;
reg [2047:0] ec1a3c3;
wire [8:0] sud1e18;
localparam yz8f0c0 = 9,su78605 = 32'hfdffe06b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
generate
begin   if (hbdd79c == 0) begin         assign dout = lq5df83;   end else if (uvd3581 == "TRUNCATION") begin      assign dout = lq5df83[DWIDTH-1:hbdd79c];   end else begin      ofc6cbc_Scaler   #(.DWIDTH  (nre6504    ),                 .DTYPE   (oh9ac0c    ),                 .qtdcca0   (qtdcca0       ))      gd9fb28  (                 .rstn    (rstn    ),                 .clk     (clk     ),                 .ce      (ofe284f      ),                 .sr      (do1427d      ),                 .nee4a89    (ux1793f    ),                 .ri2544a    (fae4fe9    ),                 .dout    (dout    ));   end
end
endgenerate
generate
begin   if(hbdd79c ==0 || uvd3581 == "TRUNCATION") begin      always@(*) nee4a89  <= kdd976d;      always@(*) ri2544a  <= tu5db68;      always@(*) ea78c7b  <= enf765d;   end else begin      always @(posedge clk or negedge rstn)      begin         if (rstn == 1'b0) begin            nee4a89 <= {nre6504{1'b0}};            ri2544a <= {nre6504{1'b0}};            ea78c7b  <= 1'b0;         end else if (ofe284f) begin            if (do1427d) begin               nee4a89 <= {nre6504{1'b0}};               ri2544a <= {nre6504{1'b0}};               ea78c7b  <= 1'b0;            end else begin               nee4a89 <= kdd976d;               ri2544a <= tu5db68;               ea78c7b  <= enf765d;            end         end      end   end
end
endgenerate
assign ofc63d9   = lq5df83[DWIDTH-1];
generate
begin   if (oh9ac0c == "UNSIGNED")       assign wl8f669 = {lq5df83[DWIDTH-1:hbdd79c]};   else      assign wl8f669 = {enf765d,lq5df83[DWIDTH-1:hbdd79c]};
end
endgenerate
generate
begin   if (hbdd79c > 0) begin      if (oh9ac0c == "UNSIGNED") begin          if (uvd3581=="ROUNDINGUP") begin             always @(lq5df83)               wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};         end else if (uvd3581=="NORMAL") begin             always @(lq5df83)               wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};         end else if (uvd3581=="TOWARDSZERO") begin             always @(lq5df83)            begin               if( lq5df83[hbdd79c-1:0]== (1<<(hbdd79c-1)))                  wjd9a6f = 0;               else                  wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};            end         end else if (uvd3581=="CONVERGENT") begin             always @(lq5df83)            begin               if( lq5df83[hbdd79c-1:0]== (1<<(hbdd79c-1))) begin                  if(lq5df83[hbdd79c]==1)                     wjd9a6f = {{(nre6504-1){1'b0}},1'b1};                  else if(lq5df83[hbdd79c]==0)                     wjd9a6f = 0;               end else                  wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};            end         end      end else begin          if (uvd3581=="ROUNDINGUP") begin             always @(lq5df83 or enf765d)               wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};         end else if (uvd3581=="NORMAL") begin             always @(lq5df83 or enf765d)            begin               if(enf765d==0)                  wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};               else begin                  if( lq5df83[hbdd79c-1:0]== (1<<(hbdd79c-1)))                     wjd9a6f = 0;                  else                     wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};               end            end         end else if (uvd3581=="TOWARDSZERO") begin             always @(lq5df83 or enf765d)            begin               if(enf765d==0) begin                  if( lq5df83[hbdd79c-1:0]== (1<<(hbdd79c-1)))                     wjd9a6f = 0;                  else                     wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};               end else                  wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};            end         end else if (uvd3581=="CONVERGENT") begin             always @(lq5df83 or enf765d)            begin               if( lq5df83[hbdd79c-1:0]== (1<<(hbdd79c-1))) begin                  if(lq5df83[hbdd79c]==1)                     wjd9a6f = {{(nre6504-1){1'b0}},1'b1};                  else                     wjd9a6f = 0;               end else                  wjd9a6f = {{(nre6504-1){1'b0}},lq5df83[hbdd79c-1]};            end         end      end   end
end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};ip5eecb<=sud1e18[3];enf765d<=sud1e18[4];kdd976d<={wl8f669>>1,sud1e18[5]};tu5db68<={wjd9a6f>>1,sud1e18[6]};ux1793f<={nee4a89>>1,sud1e18[7]};fae4fe9<={ri2544a>>1,sud1e18[8]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=ea78c7b;ec1a3c3[2041]<=ofc63d9;ec1a3c3[2034]<=wl8f669[0];ec1a3c3[2021]<=wjd9a6f[0];ec1a3c3[1995]<=nee4a89[0];ec1a3c3[1943]<=ri2544a[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module alf26d6_Scaler(
                 
                 clk,
                 rstn,
                 ce,
                 sr,
                 din,
                 
                 dout
                 );
parameter DWIDTH         = 12;
parameter ned55c5         = 3;
parameter jrb559d      = 3;
parameter DOUTWIDTH      = 3;
parameter xlbf91e  = 1;
parameter icfa6b0  = "SATURATION";
parameter uvd3581  = "TRUNCATION";
parameter hbdd79c      = 3;
parameter lfb032c      = 0;
parameter lf81966        = 0;
parameter rvcb37     = 0;
parameter oh9ac0c       = "SIGNED";
parameter ald6065      = "SIGNED";
input                   clk;
input                   rstn;
input                   ce;
input                   sr;
input[DWIDTH-1:0]       din;
output[DOUTWIDTH-1:0]   dout;
wire                    qib3497;
wire                    cb9a4b9;
wire[ned55c5-2:0]        wy92e66;
wire[ned55c5-2:0]        ecb9988;
wire[ned55c5-1:0]        rg6620d;
wire[ned55c5-1:0]        sw88350;
wire[ned55c5-1:0]        kfd405;
wire[ned55c5-1:0]        jp50164;
reg[ned55c5-1:0]         qi593d;
wire[ned55c5-1:0]        dz64f4c;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] lq5df83;
reg xw66fb1;
reg zz37d8b;
reg [ned55c5 - 2 : 0] thf62f4;
reg [ned55c5 - 2 : 0] bn8bd3c;
reg [ned55c5 - 1 : 0] zkf4f35;
reg [ned55c5 - 1 : 0] ir3cd5b;
reg [ned55c5 - 1 : 0] hq356ef;
reg [ned55c5 - 1 : 0] cz5bbd4;
reg [ned55c5 - 1 : 0] goef52e;
reg [ned55c5 - 1 : 0] qgd4b84;
reg [2047:0] ec1a3c3;
wire [12:0] sud1e18;
localparam yz8f0c0 = 13,su78605 = 32'hfdffca8b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
assign wy92e66  = {(ned55c5-1){1'b1}};
assign ecb9988 = {(ned55c5-1){1'b0}};
generate
begin   if (oh9ac0c == "UNSIGNED") begin       if (icfa6b0 == "WRAP_AROUND") begin          assign jp50164 = lq5df83[ned55c5-1:0];      end else begin          if (DWIDTH == ned55c5)            assign jp50164 = lq5df83[ned55c5-1:0];         else begin            assign qib3497 = |(lq5df83[DWIDTH-1:ned55c5]);            assign jp50164 = xw66fb1 ? {1'b1,thf62f4} : lq5df83[ned55c5-1:0];         end      end   end else begin       if (ald6065 == "SIGNED") begin         if (icfa6b0=="WRAP_AROUND") begin             if (hbdd79c == 0 || uvd3581=="TRUNCATION")               assign jp50164 = {lq5df83[DWIDTH-1],lq5df83[ned55c5-2:0]};            else               assign jp50164 = {lq5df83[DWIDTH-2],lq5df83[ned55c5-2:0]};         end else begin             if (DWIDTH == ned55c5) begin               assign jp50164 = lq5df83;            end else begin               assign qib3497  = |(lq5df83[DWIDTH-1:ned55c5-1]);               assign cb9a4b9 = &(lq5df83[DWIDTH-1:ned55c5-1]);               assign sw88350 = zz37d8b ? lq5df83[ned55c5-1:0] : {1'b1,bn8bd3c};               assign kfd405 = xw66fb1 ? {1'b0,thf62f4} : lq5df83[ned55c5-1:0];               assign jp50164 = lq5df83[DWIDTH-1] ? ir3cd5b : hq356ef;            end         end      end else begin          if (icfa6b0 == "WRAP_AROUND") begin             assign rg6620d = lq5df83[ned55c5-1:0];         end else begin             if (DWIDTH == ned55c5)               assign qib3497 = 0;            else               assign qib3497 = |(lq5df83[DWIDTH-1:ned55c5]);            assign rg6620d = xw66fb1 ? {1'b1,thf62f4} : lq5df83[ned55c5-1:0];         end         assign jp50164 = (lq5df83[DWIDTH-1] == 1) ? {ned55c5{1'b0}} : zkf4f35;      end   end
end
endgenerate
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0)      qi593d <= {ned55c5{1'b0}};   else if (ofe284f == 1'b1) begin      if (do1427d)         qi593d <= {ned55c5{1'b0}};      else         qi593d <= cz5bbd4;   end
end
generate
begin   if (xlbf91e==0) begin      assign dz64f4c = lq5df83 ;   end else if(icfa6b0 == "SATURATION") begin      assign dz64f4c = goef52e;   end else if((oh9ac0c == "SIGNED") && (ald6065 == "UNSIGNED") && (icfa6b0 == "WRAP_AROUND"))  begin      assign dz64f4c = goef52e;   end else begin      assign dz64f4c = cz5bbd4;   end
end
endgenerate
generate
if(rvcb37==(lfb032c+lf81966)) begin   assign dout = qgd4b84;
end else if (rvcb37>(lfb032c+lf81966)) begin   assign dout = {qgd4b84,{(rvcb37-(lfb032c+lf81966)){1'b0}}};
end else begin   if(DOUTWIDTH<=(jrb559d-hbdd79c))      assign dout = qgd4b84;   else begin      if (oh9ac0c == "SIGNED")         assign dout = {{(DOUTWIDTH-ned55c5){qgd4b84[ned55c5-1]}},qgd4b84};      else         assign dout = {{(DOUTWIDTH-ned55c5){1'b0}},qgd4b84};   end
end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};xw66fb1<=sud1e18[3];zz37d8b<=sud1e18[4];thf62f4<={wy92e66>>1,sud1e18[5]};bn8bd3c<={ecb9988>>1,sud1e18[6]};zkf4f35<={rg6620d>>1,sud1e18[7]};ir3cd5b<={sw88350>>1,sud1e18[8]};hq356ef<={kfd405>>1,sud1e18[9]};cz5bbd4<={jp50164>>1,sud1e18[10]};goef52e<={qi593d>>1,sud1e18[11]};qgd4b84<={dz64f4c>>1,sud1e18[12]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=qib3497;ec1a3c3[2040]<=cb9a4b9;ec1a3c3[2032]<=wy92e66[0];ec1a3c3[2017]<=ecb9988[0];ec1a3c3[1987]<=rg6620d[0];ec1a3c3[1926]<=sw88350[0];ec1a3c3[1804]<=kfd405[0];ec1a3c3[1560]<=jp50164[0];ec1a3c3[1072]<=qi593d[0];ec1a3c3[1023]<=ce;ec1a3c3[96]<=dz64f4c[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module vx662a_Scaler(
                  pclk,
                  rstn,
                  ce, 
                  sr, 
                  jc57a13,
                  hqbd09b,
                  pwrite,
                  paddr,
                  pwdat,
                  prdat,
                  tudaaf6,
                  ned57b3,
                  ohabd9b,
                  ip5ecdd,
                  fnf66ed,
                  qib376f,
                  db9bb79,
                  rtddbcf);
parameter   VFCWIDTH       = 32;
parameter   HFCWIDTH       = 32;
parameter   VINWIDTH       = 320;
parameter   VINHEIGHT      = 240;
parameter   VOUTWIDTH      = 320;
parameter   VOUTHEIGHT     = 240;
parameter   VSFACTOR       = 1;
parameter   HSFACTOR       = 1;
parameter   KERNEL         = "LANCZOS";
parameter   PADDRWIDTH     = 4;
parameter   PBUSWIDTH      = 32;
parameter   SEPPCLK        = "FALSE";
parameter   FAMILY         = "ECP2";
localparam  jp61807        = ntc03e(VINWIDTH-1);
localparam  qifb5        = ntc03e(VINHEIGHT-1);
localparam  blf6a60        = ntc03e(VOUTWIDTH-1);
localparam  ic4c1b0        = ntc03e(VOUTHEIGHT-1);
localparam  gd36026          = PBUSWIDTH/8;
localparam  ir809ae           = (gd36026==1) ? 1 : ntc03e(gd36026-1);
localparam  epaeaeb  = 0,         gb7575d = 4,         wlabaec  = 8,         tu5d765 = 12,         neebb2b  = 16,         zk5d95b  = 20,         hbecada    = 24,            al656d6     = 28;
input                      pclk;
input                      rstn;
input                      ce;
input                      sr;
input                      jc57a13;
input                      hqbd09b;
input                      pwrite;
input   [PADDRWIDTH-1:0]   paddr;
input    [PBUSWIDTH-1:0]   pwdat;
output   [PBUSWIDTH-1:0]   prdat;
output     [jp61807-1:0]   tudaaf6;
output     [qifb5-1:0]   ned57b3;
output     [blf6a60-1:0]   ohabd9b;
output     [ic4c1b0-1:0]   ip5ecdd;
output    [VFCWIDTH-1:0]   fnf66ed;
output    [HFCWIDTH-1:0]   qib376f;
output                     rtddbcf;
output             [1:0]   db9bb79;
wire       [jp61807-1:0]   tudaaf6;
wire       [qifb5-1:0]   ned57b3;
wire       [blf6a60-1:0]   ohabd9b;
wire       [ic4c1b0-1:0]   ip5ecdd;
wire      [VFCWIDTH-1:0]   fnf66ed;
wire      [HFCWIDTH-1:0]   qib376f;
reg               [15:0]   vxa03ba;
reg               [15:0]   hq1dd7;
reg               [15:0]   jeeebb;
reg               [15:0]   yk775da;
reg               [31:0]   phbaed1;
reg               [31:0]   vvd768e;
reg                        wlbb476;
reg                [1:0]   byda3b5;
reg                [1:0]   uid1daa;
reg                [1:0]   ph8ed50;
reg                [1:0]   vi76a86[2:0];
reg      [PBUSWIDTH-1:0]   prdat;
reg                        fn50cb6;
wire                       xy865b6;
wire [PADDRWIDTH-ir809ae:0]   ieb6cf3;
reg ofe284f;
reg do1427d;
reg hd9e608;
reg thf3046;
reg [PADDRWIDTH - 1 : 0] ayc11b9;
reg [PBUSWIDTH - 1 : 0] yk46e45;
reg [15 : 0] nt37228;
reg [15 : 0] cob9147;
reg [15 : 0] vvc8a38;
reg [15 : 0] xj451c7;
reg [31 : 0] fp28e3e;
reg [31 : 0] jc471f6;
reg bn38fb3;
reg [1 : 0] rtc7d9f;
reg [1 : 0] gq3ecfe;
reg [1 : 0] blf67f0;
reg ksb3f87;
reg cb9fc38;
reg [PADDRWIDTH - ir809ae : 0] ec87159;
reg [2047:0] ec1a3c3;
wire [18:0] sud1e18;
localparam yz8f0c0 = 19,su78605 = 32'hfdffd42b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
assign tudaaf6  = nt37228 [jp61807-1:0];
assign ned57b3 = cob9147[qifb5-1:0];
assign ohabd9b  = vvc8a38 [blf6a60-1:0];
assign ip5ecdd = xj451c7[ic4c1b0-1:0];
assign fnf66ed  = fp28e3e [VFCWIDTH-1:0];
assign qib376f  = jc471f6 [HFCWIDTH-1:0];
assign xy865b6     = (SEPPCLK=="FALSE") ? hd9e608  : gq3ecfe[1];
assign rtddbcf    = (SEPPCLK=="FALSE") ? bn38fb3 : rtc7d9f[1];
assign db9bb79     = (SEPPCLK=="FALSE") ? blf67f0  : vi76a86[2];
always @(posedge hqbd09b or negedge rstn) begin   if(!rstn) begin      fn50cb6 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         fn50cb6 <= 1'b0;      end else if(hd9e608 && rtddbcf) begin         fn50cb6 <= 1'b1;      end else if(!rtddbcf) begin         fn50cb6 <= 1'b0;      end   end
end
always @(posedge hqbd09b or negedge rstn) begin   if(!rstn) begin      byda3b5[0] <= 1'b0;      byda3b5[1] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         byda3b5[0] <= 1'b0;         byda3b5[1] <= 1'b0;      end else begin         byda3b5[0] <= bn38fb3;         byda3b5[1] <= rtc7d9f[0];      end   end
end
always @(posedge pclk or negedge rstn) begin   if(!rstn) begin      uid1daa[0] <= 1'b0;      uid1daa[1] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         uid1daa[0] <= 1'b0;         uid1daa[1] <= 1'b0;      end else begin         uid1daa[0] <= ksb3f87;         uid1daa[1] <= gq3ecfe[0];      end   end
end
always @(posedge hqbd09b or negedge rstn) begin   if(!rstn) begin      vi76a86[0] <= 2'b00;      vi76a86[1] <= 2'b00;      vi76a86[2] <= 2'b00;   end else if(ofe284f) begin      if(do1427d) begin         vi76a86[0] <= 2'b00;         vi76a86[1] <= 2'b00;         vi76a86[2] <= 2'b00;      end else begin         vi76a86[0] <= blf67f0;         vi76a86[1] <= vi76a86[0];         vi76a86[2] <= vi76a86[1];      end   end
end
generate   if(PBUSWIDTH==32) begin      assign ieb6cf3     = ayc11b9>>2;      always @(posedge pclk or negedge rstn) begin         if(!rstn) begin            vxa03ba  <= VINWIDTH-1;            hq1dd7 <= VINHEIGHT-1;            jeeebb  <= VOUTWIDTH-1;            yk775da <= VOUTHEIGHT-1;            phbaed1  <= VSFACTOR;            vvd768e  <= HSFACTOR;            wlbb476    <= 1'b0;            ph8ed50     <= 2'b00;            prdat     <= {PBUSWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               vxa03ba  <= VINWIDTH-1;               hq1dd7 <= VINHEIGHT-1;               jeeebb  <= VOUTWIDTH-1;               yk775da <= VOUTHEIGHT-1;               phbaed1  <= VSFACTOR;               vvd768e  <= HSFACTOR;               wlbb476    <= 1'b0;               ph8ed50     <= 2'b00;               prdat     <= {PBUSWIDTH{1'b0}};            end else begin               if(!bn38fb3 && thf3046 && ec87159==(epaeaeb/4)) begin                  vxa03ba  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(gb7575d/4)) begin                  hq1dd7 <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(wlabaec/4)) begin                  jeeebb  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(tu5d765/4)) begin                  yk775da <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b/4)) begin                  phbaed1  <= yk46e45[31:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b/4)) begin                  vvd768e  <= yk46e45[31:0];               end               if(cb9fc38) begin                  wlbb476    <= 1'b0;               end else if(thf3046 && ec87159==(hbecada/4)) begin                  wlbb476    <= yk46e45[0];               end               if(KERNEL=="CUSTOM" && thf3046 && ec87159==(al656d6/4)) begin                  ph8ed50     <= yk46e45[1:0];               end               case(ec87159)                   ( epaeaeb/4) : prdat <= {{16{1'b0}},nt37228};                  (gb7575d/4) : prdat <= {{16{1'b0}},cob9147};                  ( wlabaec/4) : prdat <= {{16{1'b0}},vvc8a38};                  (tu5d765/4) : prdat <= {{16{1'b0}},xj451c7};                  ( neebb2b/4) : prdat <= (KERNEL=="NEAREST") ? fp28e3e : {32{1'b0}};                  ( zk5d95b/4) : prdat <= (KERNEL=="NEAREST") ? jc471f6 : {32{1'b0}};                  (   hbecada/4) : prdat <= {{31{1'b0}},bn38fb3};                  (    al656d6/4) : prdat <= (KERNEL=="CUSTOM" ) ? {{30{1'b0}},blf67f0} : {32{1'b0}};                  default            : prdat <=  {32{1'b0}};               endcase            end         end      end   end else if(PBUSWIDTH==16) begin      assign ieb6cf3     = ayc11b9>>1;      always @(posedge pclk or negedge rstn) begin         if(!rstn) begin            vxa03ba  <= VINWIDTH-1;            hq1dd7 <= VINHEIGHT-1;            jeeebb  <= VOUTWIDTH-1;            yk775da <= VOUTHEIGHT-1;            phbaed1  <= VSFACTOR;            vvd768e  <= HSFACTOR;            wlbb476    <= 1'b0;            ph8ed50     <= 2'b00;            prdat     <= {PBUSWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               vxa03ba  <= VINWIDTH-1;               hq1dd7 <= VINHEIGHT-1;               jeeebb  <= VOUTWIDTH-1;               yk775da <= VOUTHEIGHT-1;               phbaed1  <= VSFACTOR;               vvd768e  <= HSFACTOR;               wlbb476    <= 1'b0;               ph8ed50     <= 2'b00;               prdat     <= {PBUSWIDTH{1'b0}};            end else begin               if(!bn38fb3 && thf3046 && ec87159==(epaeaeb/2)) begin                  vxa03ba  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(gb7575d/2)) begin                  hq1dd7 <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(wlabaec/2)) begin                  jeeebb  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(tu5d765/2)) begin                  yk775da <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b/2)) begin                  phbaed1[15:0]  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b/2 + 1)) begin                  phbaed1[31:16] <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b/2)) begin                  vvd768e[15:0]  <= yk46e45[15:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b/2 + 1)) begin                  vvd768e[31:16] <= yk46e45[15:0];               end               if(cb9fc38) begin                  wlbb476    <= 1'b0;               end else if(thf3046 && ec87159==(hbecada/2)) begin                  wlbb476    <= yk46e45[0];               end               if(KERNEL=="CUSTOM" && thf3046 && ec87159==(al656d6/2)) begin                  ph8ed50     <= yk46e45[1:0];               end               case(ec87159)                   ( epaeaeb/2  ) : prdat <= nt37228;                  (gb7575d/2  ) : prdat <= cob9147;                  ( wlabaec/2  ) : prdat <= vvc8a38;                  (tu5d765/2  ) : prdat <= xj451c7;                  ( neebb2b/2  ) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[15: 0] : {16{1'b0}};                  ( neebb2b/2+1) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[31:16] : {16{1'b0}};                  ( zk5d95b/2  ) : prdat <= (KERNEL=="NEAREST") ? jc471f6[15: 0] : {16{1'b0}};                  ( zk5d95b/2+1) : prdat <= (KERNEL=="NEAREST") ? jc471f6[31:16] : {16{1'b0}};                  (   hbecada/2  ) : prdat <= {{15{1'b0}},bn38fb3};                  (    al656d6/2  ) : prdat <= (KERNEL=="CUSTOM" ) ? {{14{1'b0}},blf67f0} : {16{1'b0}};                  default              : prdat <=  {16{1'b0}};               endcase            end         end      end   end else if(PBUSWIDTH==8) begin      assign ieb6cf3     = ayc11b9;      always @(posedge pclk or negedge rstn) begin         if(!rstn) begin            vxa03ba  <= VINWIDTH-1;            hq1dd7 <= VINHEIGHT-1;            jeeebb  <= VOUTWIDTH-1;            yk775da <= VOUTHEIGHT-1;            phbaed1  <= VSFACTOR;            vvd768e  <= HSFACTOR;            wlbb476    <= 1'b0;            ph8ed50     <= 2'b00;            prdat     <= {PBUSWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               vxa03ba  <= VINWIDTH-1;               hq1dd7 <= VINHEIGHT-1;               jeeebb  <= VOUTWIDTH-1;               yk775da <= VOUTHEIGHT-1;               phbaed1  <= VSFACTOR;               vvd768e  <= HSFACTOR;               wlbb476    <= 1'b0;               ph8ed50     <= 2'b00;               prdat     <= {PBUSWIDTH{1'b0}};            end else begin               if(!bn38fb3 && thf3046 && ec87159==(epaeaeb)) begin                  vxa03ba[7:0]   <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(epaeaeb+1)) begin                  vxa03ba[15:8]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(gb7575d)) begin                  hq1dd7[7:0]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(gb7575d+1)) begin                  hq1dd7[15:8] <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(wlabaec)) begin                  jeeebb[7:0]   <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(wlabaec+1)) begin                  jeeebb[15:8]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(tu5d765)) begin                  yk775da[7:0]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(tu5d765+1)) begin                  yk775da[15:8] <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b)) begin                  phbaed1[7:0]   <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b+1)) begin                  phbaed1[15:8]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && 
ec87159==(neebb2b+2)) begin                  phbaed1[23:16] <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(neebb2b+3)) begin                  phbaed1[31:24] <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b)) begin                  vvd768e[7:0]   <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b+1)) begin                  vvd768e[15:8]  <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b+2)) begin                  vvd768e[23:16] <= yk46e45[7:0];               end               if(!bn38fb3 && thf3046 && ec87159==(zk5d95b+3)) begin                  vvd768e[31:24] <= yk46e45[7:0];               end               if(cb9fc38) begin                  wlbb476    <= 1'b0;               end else if(thf3046 && ec87159==(hbecada)) begin                  wlbb476    <= yk46e45[0];               end               if(KERNEL=="CUSTOM" && thf3046 && ec87159==(al656d6)) begin                  ph8ed50     <= yk46e45[1:0];               end               case(ec87159)                   ( epaeaeb  ) : prdat <= nt37228 [ 7:0];                  ( epaeaeb+1) : prdat <= nt37228 [15:8];                  (gb7575d  ) : prdat <= cob9147[ 7:0];                  (gb7575d+1) : prdat <= cob9147[15:8];                  ( wlabaec  ) : prdat <= vvc8a38 [ 7:0];                  ( wlabaec+1) : prdat <= vvc8a38 [15:8];                  (tu5d765  ) : prdat <= xj451c7[ 7:0];                  (tu5d765+1) : prdat <= xj451c7[15:8];                  ( neebb2b  ) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[ 7: 0] : {8{1'b0}};                  ( neebb2b+1) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[15: 8] : {8{1'b0}};                  ( neebb2b+2) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[23:16] : {8{1'b0}};                  ( neebb2b+3) : prdat <= (KERNEL=="NEAREST") ? fp28e3e[31:24] : {8{1'b0}};                  ( zk5d95b  ) : prdat <= (KERNEL=="NEAREST") ? jc471f6[ 7: 0] : {8{1'b0}};                  ( zk5d95b+1) : prdat <= (KERNEL=="NEAREST") ? jc471f6[15: 8] : {8{1'b0}};                  ( zk5d95b+2) : prdat <= (KERNEL=="NEAREST") ? jc471f6[23:16] : {8{1'b0}};                  ( zk5d95b+3) : prdat <= (KERNEL=="NEAREST") ? jc471f6[31:24] : {8{1'b0}};                  (   hbecada  ) : prdat <= {{7{1'b0}},bn38fb3};                  (    al656d6  ) : prdat <= (KERNEL=="CUSTOM" ) ? {{6{1'b0}},blf67f0} : {8{1'b0}};                  default            : prdat <=  {8{1'b0}};               endcase            end         end      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];hd9e608<=sud1e18[2];thf3046<=sud1e18[3];ayc11b9<={paddr>>1,sud1e18[4]};yk46e45<={pwdat>>1,sud1e18[5]};nt37228<={vxa03ba>>1,sud1e18[6]};cob9147<={hq1dd7>>1,sud1e18[7]};vvc8a38<={jeeebb>>1,sud1e18[8]};xj451c7<={yk775da>>1,sud1e18[9]};fp28e3e<={phbaed1>>1,sud1e18[10]};jc471f6<={vvd768e>>1,sud1e18[11]};bn38fb3<=sud1e18[12];rtc7d9f<={byda3b5>>1,sud1e18[13]};gq3ecfe<={uid1daa>>1,sud1e18[14]};blf67f0<={ph8ed50>>1,sud1e18[15]};ksb3f87<=sud1e18[16];cb9fc38<=sud1e18[17];ec87159<={ieb6cf3>>1,sud1e18[18]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=jc57a13;ec1a3c3[2044]<=pwrite;ec1a3c3[2041]<=paddr[0];ec1a3c3[2035]<=pwdat[0];ec1a3c3[2022]<=vxa03ba[0];ec1a3c3[1996]<=hq1dd7[0];ec1a3c3[1945]<=jeeebb[0];ec1a3c3[1842]<=yk775da[0];ec1a3c3[1637]<=phbaed1[0];ec1a3c3[1622]<=uid1daa[0];ec1a3c3[1391]<=ieb6cf3[0];ec1a3c3[1226]<=vvd768e[0];ec1a3c3[1197]<=ph8ed50[0];ec1a3c3[1023]<=ce;ec1a3c3[811]<=byda3b5[0];ec1a3c3[695]<=xy865b6;ec1a3c3[405]<=wlbb476;ec1a3c3[347]<=fn50cb6;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module xl9030_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  din, 
                  dvalid_in,
                  frmsync_in,
                  fpbf6f1, 
                  vxa03ba,
                  hq1dd7,
                  jeeebb,
                  yk775da,
                  phbaed1,
                  vvd768e,
                  ph8ed50,
                  dout_enable,
                  zx40d74, 
                  dout, 
                  dvalid_out, 
                  frmsync_out,
                  xwee109,
                  fwidth_out,
                  fheight_out,
                  frm_resync,
                  vx9571,
                  th4ab8e,
                  ready);
parameter   SCALER_NAME    = "SCALER";
parameter   NUM_PLANE      = 3;
parameter   VINWIDTH       = 320;
parameter   VINHEIGHT      = 240;
parameter   VOUTWIDTH      = 320;
parameter   VOUTHEIGHT     = 240;
parameter   KERNEL         = "LANCZOS";
parameter   VFTAPS         = 4;
parameter   HFTAPS         = 4;
parameter   VFPHASES       = 256;
parameter   HFPHASES       = 256;
parameter   EDGEMODE       = "COPY";
parameter   EDGEVALUE      = 0;
parameter   VSFACTOR       = 16;
parameter   HSFACTOR       = 16;
parameter   VFCWIDTH       = 32;
parameter   VFCBPWIDTH     = 16;
parameter   HFCWIDTH       = 32;
parameter   HFCBPWIDTH     = 16;
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   DYNAMIC        = "FALSE";
parameter   ADAPTIVE       = "FALSE";
parameter   CBANKS         = 1;
parameter   EDGE_TH        = 8;
parameter   RESAMPLE       = "AVERAGE";
parameter   SHARE_CMEM     = "TRUE";
parameter   fa66a78         = 8;
parameter   CWIDTH         = 8;
parameter   LBUFFER        = "EBR";
parameter   ld4f0d0        = "EBR";
parameter   FAMILY         = "ECP2M";
localparam  shc3438     = (PARALLEL=="FALSE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  fp38a11     = (PARALLEL== "TRUE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  DWIDTH         = shc3438*fa66a78;
localparam  ldd76ac       = fp38a11;
localparam  jp61807        = ntc03e(VINWIDTH-1);
localparam  qifb5        = ntc03e(VINHEIGHT-1);
localparam  blf6a60        = ntc03e(VOUTWIDTH-1);
localparam  ic4c1b0        = ntc03e(VOUTHEIGHT-1);
localparam  cb33640        = ntc03e(VFPHASES-1);
localparam  thc8175        = ntc03e(HFPHASES-1);
localparam  uk2ebb9       = ldd76ac*VINWIDTH;
localparam  ay7726d        = ntc03e(uk2ebb9-1);
localparam  ne4da45      = ntc03e(uk2ebb9);
localparam  jc48acb       = VFCWIDTH-VFCBPWIDTH;
localparam  cm596f0       = HFCWIDTH-HFCBPWIDTH;
localparam  mede04d        = (VOUTHEIGHT==(1<<VFCBPWIDTH)) ? (VFCBPWIDTH+1) : VFCBPWIDTH;
localparam  ea681ba        = (VOUTWIDTH ==(1<<HFCBPWIDTH)) ? (HFCBPWIDTH+1) : HFCBPWIDTH;
localparam  uid1fbf        = ntc03e(VINHEIGHT)+VFCBPWIDTH;
localparam  fpbf134        = ntc03e(VINWIDTH )+HFCBPWIDTH;
localparam  qi34f4d        = uid1fbf+mede04d;
localparam  the9a5e        = fpbf134+ea681ba;
localparam  kd4bd93        = (uid1fbf>fpbf134) ? uid1fbf : fpbf134;
localparam  hq9cbdb        = (VFTAPS-1)/2;
localparam  pu2f6d0       = (HFTAPS-1)/2;
localparam  godb417     = VFTAPS-1-hq9cbdb;
localparam  qi82e13      = HFTAPS-1-pu2f6d0;
localparam  zxc2622      = (ldd76ac==1) ? 1 : ntc03e(ldd76ac-1);
localparam  vx22f80        = (   hq9cbdb <=1) ? 1 : ntc03e(   hq9cbdb-1);
localparam  wl80f68        = (godb417 <=1) ? 1 : ntc03e(godb417-1);
localparam  ui68b3d     = (VFTAPS-1)*DWIDTH;
localparam  cm67a3c     = VFTAPS*DWIDTH;
localparam  by47874     = VFTAPS*CWIDTH;
localparam  fce8a2     = HFTAPS*CWIDTH;
localparam  fc144b3     = {SCALER_NAME,"coeffv.rom"};
localparam  an12cda        = (SHARE_CMEM=="TRUE") ? (by47874+8) : (thc8175+8);
localparam  tudaa8e       = "TRUE";
localparam  ned5473      = "TRUE";
localparam  phaa39b   = 31;
localparam  mr51cde        = ntc03e(phaa39b);
localparam  jr9bd3b       = (YCBCR422=="TRUE" || YCBCR444=="TRUE") ? (ld4f0d0=="EBR") ? 4 : 3                                                                    : (ld4f0d0=="EBR") ? 5 : 4;
localparam  psdf2d0        = ntc03e(jr9bd3b-1);
localparam  jp5a0b1       = (CBANKS==4) ? 2 : 1;
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input       [DWIDTH-1:0]   din;
input                      dvalid_in;
input                      frmsync_in;
input                      fpbf6f1;
input      [jp61807-1:0]   vxa03ba;
input      [qifb5-1:0]   hq1dd7;
input      [blf6a60-1:0]   jeeebb;
input      [ic4c1b0-1:0]   yk775da;
input      [VFCWIDTH-1:0]  phbaed1;
input      [HFCWIDTH-1:0]  vvd768e;
input               [1:0]  ph8ed50;
input                      dout_enable;
output                     ready;
output                     frm_resync;
output                     vx9571;
output             [1:0]   th4ab8e;
output  [by47874-1:0]   zx40d74;
output  [cm67a3c-1:0]   dout;
output                     dvalid_out;
output                     frmsync_out;
output     [an12cda-1:0]   xwee109;
output     [blf6a60-1:0]   fwidth_out;
output     [ic4c1b0-1:0]   fheight_out;
reg        [jp61807-1:0]   ec1fa17             ;
reg        [jp61807-1:0]   ofe85cc          ;
reg        [qifb5-1:0]   gd1732a             ;
reg        [blf6a60-1:0]   ofccaa1             ;
reg        [ic4c1b0-1:0]   je2a86d             ;
reg        [VFCWIDTH-1:0]  sja1b5d              ;
reg        [HFCWIDTH-1:0]  ea6d765              ;
reg        [blf6a60-1:0]   fwidth_out           ;
reg        [ic4c1b0-1:0]   fheight_out          ;
wire                       qv29eb5            ;
reg                        vv4f5ac          ;
reg                        vx9571          ;
wire       [jp5a0b1-1:0]  zzb59e5        ;
wire                       ukacf2f            ;
reg                        yk67978            ;
wire                       gd3cbc1            ;
reg        [jp61807-1:0]   hq2f068          ;
reg        [qifb5-1:0]   mec1a10          ;
reg                [1:0]   yzd081               ;
reg                [1:0]   th4ab8e               ;
reg        [qifb5-1:0]   ie1030b              ;
reg        [jp61807-1:0]   phc2cf              ;
reg        [qifb5-1:0]   xyb3f7              ;
reg        [jp61807-1:0]   pscfdd8              ;
reg                        frm_resync           ;
reg                        gbf7616       ;
wire                       anbb0b5         ;
reg                        jpd85ad       ;
wire                       nrc2d6f         ;
reg                        db16b7e       ;
reg        [qifb5-1:0]   doadfbf          ;
reg                        uv6fdfa       ;
wire                       fn7efd5         ;
reg                        shf7eae         ;
reg        [VFCWIDTH-1:0]  wwfaba7                ;
reg        [VFCWIDTH-1:0]  mtae9c2           ;
reg        [VFCWIDTH-1:0]  zma70af          ;
wire       [jc48acb-1:0]  pfc2bd6                ;
wire       [jc48acb-1:0]  jraf5b0           ;
wire       [jc48acb-1:0]  czd6c34          ;
reg                        cob61a5         ;
wire                       vxb0d29           ;
wire                       pu8694f          ;
reg                        qi34a7a         ;
wire                       dba53d1            ;
wire       [cb33640-1:0]   bl4f47c             ;
reg        [cb33640-1:0]   uid1f3d[1:0]      ;
wire       [cb33640-1:0]   ne7cf44          ;
reg        [cb33640-1:0]   jr3d11d[4:0]     ;
wire       [cb33640-1:0]   gb44774            ;
reg        [ic4c1b0-1:0]   gd1dd25         ;
reg                        jcee92c      ;
wire                       vv74963        ;
reg                        qva4b1f        ;
reg                        pu258fc            ;
reg                        ir2c7e2            ;
reg                        lq63f15             ;
reg      [zxc2622-1:0]   zxfc559             ;
wire                       wje2ace            ;
reg      [zxc2622-1:0]   wlab3a9           ;
wire                       os59d4c          ;
reg      [zxc2622-1:0]   kd75300           ;
wire                       aaa9804          ;
reg      [zxc2622-1:0]   kd60100            ;
wire                       wy805           ;
wire       [thc8175-1:0]   tw2014a             ;
reg        [HFCWIDTH-1:0]  co5299                ;
reg        [HFCWIDTH-1:0]  pf4a645           ;
reg        [HFCWIDTH-1:0]  tw99178          ;
wire       [cm596f0-1:0]  bl45e1f                ;
wire       [cm596f0-1:0]  ui787fa           ;
wire       [cm596f0-1:0]  mg1fe84          ;
reg                        icff421         ;
wire                       sufa109           ;
wire                       vid0849          ;
wire                       xl8424a            ;
reg                        co21256              ;
reg                        nt92b1              ;
reg                        ea4958e           ;
reg                        nr4ac70           ;
reg        [jp61807-1:0]   qvb1c30          ;
reg        [jp61807-1:0]   ip70c2f       ;
wire                       pu8617d      ;
reg                        vk30beb       ;
wire                       qv85f5b         ;
reg                        do2fadd       ;
reg                        ww7d6eb      ;
wire                       xweb758        ;
reg        [blf6a60-1:0]   dzdd615         ;
reg                        pseb0af             ;
reg                        lq5857a          ;
reg                        dzc2bd3           ;
reg                        ym15e9e           ;
reg                        vxaf4f0           ;
wire                       ip7a786           ;
reg                        uvd3c35        ;
reg                        tj9e1ad           ;
wire                       icf0d6e         ;
wire                       pu86b71               ;
reg                        ri35b8a            ;
reg                        jeadc53          ;
reg                        rt6e29a          ;
wire                       dz714d6            ;
wire                       yz8a6b6            ;
reg                        ready                ;
reg                        yz9ada8           ;
reg                        czd6d45             ;
reg                        cob6a2d           ;
reg                        rvb5168       ;
wire                       fca8b46         ;
reg              [7:0]     ld45a32        ;
reg              [7:0]     rv2d197        ;
wire                       ea68cbf          ;
wire    [cm67a3c-1:0]   dout                 ;
wire    [by47874-1:0]   zx40d74                 ;
wire    [by47874-1:0]   wwc1c7c             ;
reg         [CWIDTH-1:0]   dz71f0b[1:0]           ;
reg         [DWIDTH-1:0]   vi7c2fc[VFTAPS-1:0]    ;
reg              [1:0]     lsbf13         ;
wire                       rt5f89a           ;
wire    [cm67a3c-1:0]   wje26be                ;
wire    [by47874-1:0]   kf9afa6                ;
reg     [cm67a3c-1:0]   anbe9af                ;
reg     [cm67a3c-1:0]   aaa6be3               ;
reg     [cm67a3c-1:0]   rvaf8cb               ;
reg     [cm67a3c-1:0]   the32fa               ;
reg     [cm67a3c-1:0]   gocbeb7               ;
reg     [by47874-1:0]   kqfadc6                ;
reg     [by47874-1:0]   jeb7185               ;
reg        [an12cda-1:0]   kdc615b[7:0]        ;
wire    [cm67a3c-1:0]   ir856eb               ;
wire        [DWIDTH-1:0]   of5bae0[VFTAPS-1:0]   ;
wire                       zkeb82f           ;
reg        [vx22f80-1:0]   ose0bd9[2:0]          ;
wire       [vx22f80-1:0]   pu2f641             ;
reg        [wl80f68-1:0]   ipd9057[2:0]          ;
wire       [wl80f68-1:0]   uv415ee             ;
reg         [VFTAPS-1:0]   lq57ba0[2:0]         ;
reg         [VFTAPS-1:0]   jcee81b[2:0]      ;
wire        [DWIDTH-1:0]   nta06de[VFTAPS-1:0]  ;
wire        [VFTAPS-1:0]   qgdbdfa            ;
wire                       osdefd1                ;
reg                        alf7e89             ;
reg        [ay7726d-1:0]   osfa267               ;
wire        [DWIDTH-1:0]   vk899c9[VFTAPS-1:0]  ;
reg        [ay7726d-1:0]   kf392c8             ;
reg     [ne4da45-1 :0]   cz4b224           ;
reg                [1:0]   yk59125              ;
reg        [ay7726d-1:0]   ip4494f[1:0]      ;
wire        [DWIDTH-1:0]   pu253e8[VFTAPS-1:0]    ;
wire        [DWIDTH-1:0]   ui7d0e6[VFTAPS-1:0]   ;
wire                       kq43985            ;
wire       [ay7726d-1:0]   dze6146           ;
wire       [ay7726d-1:0]   ux851b3           ;
wire    [ui68b3d-1:0]   yk46ce6           ;
wire    [ui68b3d-1:0]   ukb3985          ;
wire                       do9cc28              ;
wire                       nre6142              ;
wire                       ri30a16              ;
reg                        kf850b3            ;
reg                [2:0]   fp2859c          ;
reg        [qi34f4d  :0]   db1673a           ;
reg        [mede04d  :0]   vk9ceb0            ;
reg        [the9a5e  :0]   ri3ac14           ;
reg        [ea681ba  :0]   ntb0514            ;
reg        [kd4bd93+3:0]   ls14530            ;
wire       [mede04d  :0]   xy14c1b             ;
wire       [mede04d  :0]   tw306d0             ;
wire       [mede04d  :0]   ri1b413             ;
wire       [ea681ba  :0]   jcd04d2             ;
wire       [ea681ba  :0]   db13499             ;
wire       [ea681ba  :0]   bld2674             ;
wire                       ri933a6                  ;
wire                       pu99d32                  ;
wire                       cmce992           ;
wire                       xj74c90           ;
reg        [VFCWIDTH-1:0]  zz32438            ;
reg        [HFCWIDTH-1:0]  oh90e38            ;
reg                        qi871c4     ;
reg                        fp38e21      ;
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [DWIDTH - 1 : 0] lq5df83;
reg icff004;
reg uvf8021;
reg hoc010c;
reg [jp61807 - 1 : 0] nt37228;
reg [qifb5 - 1 : 0] cob9147;
reg [blf6a60 - 1 : 0] vvc8a38;
reg [ic4c1b0 - 1 : 0] xj451c7;
reg [VFCWIDTH - 1 : 0] fp28e3e;
reg [HFCWIDTH - 1 : 0] jc471f6;
reg [1 : 0] blf67f0;
reg jc734a2;
reg [jp61807 - 1 : 0] zxd289c;
reg [jp61807 - 1 : 0] ria273f;
reg [qifb5 - 1 : 0] fc9cfd7;
reg [blf6a60 - 1 : 0] ls3f5d5;
reg [ic4c1b0 - 1 : 0] dzd7558;
reg [VFCWIDTH - 1 : 0] xwd5636;
reg [HFCWIDTH - 1 : 0] tu58d9c;
reg kdc6ce2;
reg ep36714;
reg [jp5a0b1 - 1 : 0] ls9c528;
reg cze2943;
reg ls14a1d;
reg vxa50ea;
reg [jp61807 - 1 : 0] su43abf;
reg [qifb5 - 1 : 0] oseafc5;
reg [1 : 0] ho57e29;
reg [qifb5 - 1 : 0] enf8a5f;
reg [jp61807 - 1 : 0] cb297ea;
reg [qifb5 - 1 : 0] fn5faac;
reg [jp61807 - 1 : 0] ykeab3c;
reg ld559e1;
reg swacf0e;
reg ic67870;
reg ir3c381;
reg pse1c0c;
reg [qifb5 - 1 : 0] of70313;
reg jr8189c;
reg bnc4e7;
reg me6273e;
reg [VFCWIDTH - 1 : 0] xy9cf87;
reg [VFCWIDTH - 1 : 0] sw3e1d5;
reg [VFCWIDTH - 1 : 0] gq87549;
reg [jc48acb - 1 : 0] lqd524a;
reg [jc48acb - 1 : 0] su49299;
reg [jc48acb - 1 : 0] vv4a640;
reg ui53207;
reg ng99038;
reg thc81c3;
reg dz40e1e;
reg ep70f7;
reg [cb33640 - 1 : 0] enc3dee;
reg [cb33640 - 1 : 0] wjf7ba3;
reg [cb33640 - 1 : 0] dmee8e3;
reg [ic4c1b0 - 1 : 0] qia38de;
reg vx1c6f1;
reg fne378f;
reg fc1bc7e;
reg eade3f3;
reg tuf1f98;
reg an8fcc3;
reg [zxc2622 - 1 : 0] nrf30e7;
reg co9873f;
reg [zxc2622 - 1 : 0] ph1cfcc;
reg ene7e66;
reg [zxc2622 - 1 : 0] rtf99ab;
reg ofccd5f;
reg [zxc2622 - 1 : 0] ba357eb;
reg irabf5a;
reg [thc8175 - 1 : 0] shfd6af;
reg [HFCWIDTH - 1 : 0] dz5abe2;
reg [HFCWIDTH - 1 : 0] bnaf8ba;
reg [HFCWIDTH - 1 : 0] ipe2eba;
reg [cm596f0 - 1 : 0] xlbaeac;
reg [cm596f0 - 1 : 0] phbab36;
reg [cm596f0 - 1 : 0] ecacdb2;
reg by66d90;
reg ep36c83;
reg ecb641c;
reg jeb20e1;
reg yz9070b;
reg xy8385d;
reg fp1c2ea;
reg fae1757;
reg [jp61807 - 1 : 0] zk5d5da;
reg [jp61807 - 1 : 0] lq57699;
reg uxbb4ca;
reg lqda655;
reg yxd32aa;
reg tw99554;
reg necaaa3;
reg hb5551a;
reg [blf6a60 - 1 : 0] wj546bf;
reg gqa35fd;
reg mg1afe8;
reg ldd7f41;
reg zzbfa0f;
reg wjfd07e;
reg yxe83f4;
reg kd41fa5;
reg gqfd2d;
reg dz7e968;
reg byf4b46;
reg nta5a33;
reg tj2d19e;
reg ui68cf7;
reg yk467b8;
reg qv33dc1;
reg zz9ee0c;
reg kdf7067;
reg fcb833d;
reg qgc19ea;
reg fpcf51;
reg [7 : 0] ww67a8f;
reg [7 : 0] rv3d479;
reg icea3ce;
reg [by47874 - 1 : 0] wl8f384;
reg [1 : 0] dm79c25;
reg eace12b;
reg [cm67a3c - 1 : 0] db84acd;
reg [by47874 - 1 : 0] sw2b37b;
reg [cm67a3c - 1 : 0] blcdec0;
reg [cm67a3c - 1 : 0] ld7b03c;
reg [cm67a3c - 1 : 0] nec0f3f;
reg [cm67a3c - 1 : 0] yz3cfdc;
reg [cm67a3c - 1 : 0] je3f72d;
reg [by47874 - 1 : 0] mrdcb5a;
reg [by47874 - 1 : 0] zz2d6a0;
reg [cm67a3c - 1 : 0] th5a83e;
reg med41f7;
reg [vx22f80 - 1 : 0] wl7dce;
reg [wl80f68 - 1 : 0] ipf73a0;
reg [VFTAPS - 1 : 0] osce829;
reg pf74148;
reg rva0a46;
reg [ay7726d - 1 : 0] wl291b0;
reg [ay7726d - 1 : 0] ea46c2b;
reg [ne4da45 - 1 : 0] rvb0ac5;
reg [1 : 0] kf8562f;
reg co2b17c;
reg [ay7726d - 1 : 0] xwc5f02;
reg [ay7726d - 1 : 0] dm7c09b;
reg [ui68b3d - 1 : 0] wl26d1;
reg [ui68b3d - 1 : 0] tj9b46e;
reg jcda376;
reg god1bb2;
reg ec8dd90;
reg rt6ec81;
reg [2 : 0] fa7640f;
reg [qi34f4d : 0] kf903db;
reg [mede04d : 0] ksf6ef;
reg [the9a5e : 0] godbbcf;
reg [ea681ba : 0] cmef3ce;
reg [kd4bd93 + 3 : 0] rgcf383;
reg [mede04d : 0] wwce0db;
reg [mede04d : 0] fc836cc;
reg [mede04d : 0] icdb31a;
reg [ea681ba : 0] ofcc684;
reg [ea681ba : 0] qi1a122;
reg [ea681ba : 0] vx84882;
reg qi24417;
reg vx220b9;
reg co105ce;
reg co82e71;
reg [VFCWIDTH - 1 : 0] wyb9c44;
reg [HFCWIDTH - 1 : 0] ld71109;
reg ie8884e;
reg wj44271;
reg [2047:0] ec1a3c3;
wire [170:0] sud1e18;
localparam yz8f0c0 = 171,su78605 = 32'hfdffd84b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
assign dvalid_out = icea3ce;
assign zkeb82f = xwee109[0];
generate   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         ls14530 <= {(kd4bd93+4){1'b0}};      end else if(ofe284f) begin         if(do1427d) begin            ls14530 <= {(kd4bd93+4){1'b0}};         end else begin            ls14530 <= {rgcf383[kd4bd93+2:0],uvf8021};         end      end   end   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         db1673a <= VINHEIGHT<<VFCBPWIDTH;         ri3ac14 <= VINWIDTH<<HFCBPWIDTH;         vk9ceb0  <= VOUTHEIGHT;         ntb0514  <= VOUTWIDTH;      end else if(ofe284f) begin         if(do1427d) begin            db1673a <= VINHEIGHT<<VFCBPWIDTH;            ri3ac14 <= VINWIDTH<<HFCBPWIDTH;            vk9ceb0  <= VOUTHEIGHT;            ntb0514  <= VOUTWIDTH;         end else begin            if(rgcf383[0]) begin               db1673a[qi34f4d:uid1fbf] <= {(mede04d+1){1'b0}};               db1673a[uid1fbf-1:0]     <= (fc9cfd7+1)<<VFCBPWIDTH;               ri3ac14[the9a5e:fpbf134] <= {(ea681ba+1){1'b0}};               ri3ac14[fpbf134-1:0]     <= (zxd289c+1)<<HFCBPWIDTH;            end else begin               db1673a  <= {icdb31a,kf903db[uid1fbf-2:0],co105ce};               ri3ac14  <= {vx84882,godbbcf[fpbf134-2:0],co82e71};            end            if(rgcf383[0]) begin               vk9ceb0  <= (dzd7558+1);               ntb0514  <= (ls3f5d5+1);            end         end      end   end   assign xy14c1b   = kf903db[qi34f4d:uid1fbf-1];   assign tw306d0   = ksf6ef;   assign jcd04d2   = godbbcf[the9a5e:fpbf134-1];   assign db13499   = cmef3ce;   assign ri933a6        = kf903db[qi34f4d];   assign pu99d32        = godbbcf[the9a5e];   assign cmce992 = ~icdb31a[mede04d];   assign xj74c90 = ~vx84882[ea681ba];   pmi_addsub #(             .pmi_data_width        (mede04d+1   ),             .pmi_result_width      (mede04d+1   ),             .pmi_sign              ("off"       ),             .pmi_family            (FAMILY      ),             .module_type           ("pmi_addsub"))   kq4cf87     (.DataA     (xy14c1b            ),             .DataB     (tw306d0            ),             .Cin       (~ri933a6                ),             .Add_Sub   (ri933a6                 ),             .Result    (ri1b413            ),             .Cout      (                    ),             .Overflow  (                    ));   pmi_addsub #(             .pmi_data_width        (ea681ba+1   ),             .pmi_result_width      (ea681ba+1   ),             .pmi_sign              ("off"       ),             .pmi_family            (FAMILY      ),             .module_type           ("pmi_addsub"))   ww49900     (.DataA     (jcd04d2            ),             .DataB     (db13499            ),             .Cin       (~pu99d32                ),             .Add_Sub   (pu99d32                 ),             .Result    (bld2674            ),             .Cout      (                    ),             .Overflow  (                    ));   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         zz32438 <= VSFACTOR;         oh90e38 <= HSFACTOR;      end else if(ofe284f) begin         if(do1427d) begin            zz32438 <= VSFACTOR;            oh90e38 <= HSFACTOR;         end else if(DYNAMIC=="TRUE") begin            if(rgcf383[uid1fbf+1]) begin               zz32438 <= kf903db[VFCWIDTH-1:0];            end            if(rgcf383[fpbf134+1]) begin               oh90e38 <= godbbcf[HFCWIDTH-1:0];            end         end      end   end
endgenerate
assign qv29eb5 = (VFTAPS==1) ? uvf8021 : rgcf383[kd4bd93+3];
generate   if(DYNAMIC=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            ec1fa17    <= VINWIDTH-1;            ofe85cc <= VINWIDTH-2;            gd1732a    <= VINHEIGHT-1;            ofccaa1    <= VOUTWIDTH-1;            je2a86d    <= VOUTHEIGHT-1;            sja1b5d     <= VSFACTOR;            ea6d765     <= HSFACTOR;         end else if(ofe284f) begin            if(do1427d) begin               ec1fa17    <= VINWIDTH-1;               ofe85cc <= VINWIDTH-2;               gd1732a    <= VINHEIGHT-1;               ofccaa1    <= VOUTWIDTH-1;               je2a86d    <= VOUTHEIGHT-1;               sja1b5d     <= VSFACTOR;               ea6d765     <= HSFACTOR;            end else begin               if(hoc010c && uvf8021) begin                  ec1fa17    <= nt37228;                  ofe85cc <= nt37228-1;                  gd1732a    <= cob9147;                  ofccaa1    <= vvc8a38;                  je2a86d    <= xj451c7;               end               if(hoc010c && uvf8021 && VFTAPS==1) begin                   sja1b5d     <= fp28e3e;                  ea6d765     <= jc471f6;               end else if(rgcf383[kd4bd93+2] && VFTAPS>1) begin                   sja1b5d     <= wyb9c44;                  ea6d765     <= ld71109;               end            end         end      end      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            fwidth_out  <= VOUTWIDTH-1;            fheight_out <= VOUTHEIGHT-1;         end else if(ofe284f) begin            if(do1427d) begin               fwidth_out  <= VOUTWIDTH-1;               fheight_out <= VOUTHEIGHT-1;            end else if(KERNEL=="NEAREST") begin               if(ww67a8f[0]) begin                  fwidth_out  <= ls3f5d5;                  fheight_out <= dzd7558;               end            end else begin               if(icff004 && co9873f && cb297ea==50) begin                   fwidth_out  <= ls3f5d5;                  fheight_out <= dzd7558;               end            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         ec1fa17    <= VINWIDTH-1;         ofe85cc <= VINWIDTH-2;         gd1732a    <= VINHEIGHT-1;         ofccaa1    <= VOUTWIDTH-1;         je2a86d    <= VOUTHEIGHT-1;         sja1b5d     <= VSFACTOR;         ea6d765     <= HSFACTOR;      end      always @(posedge clk or negedge rstn) begin         fwidth_out  <= VOUTWIDTH-1;         fheight_out <= VOUTHEIGHT-1;      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      vv4f5ac <= 1'b0;      vx9571 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         vv4f5ac <= 1'b0;         vx9571 <= 1'b0;      end else if(icff004 && co9873f && (cb297ea==zxd289c) && enf8a5f==0) begin          vv4f5ac <= (dzd7558 < fc9cfd7) ? 1'b0 : 1'b1;         vx9571 <= (ls3f5d5 < zxd289c) ? 1'b0 : 1'b1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      hq2f068 <= VINWIDTH-1;      mec1a10 <= VINHEIGHT-1;   end else if(ofe284f) begin      if(do1427d) begin         hq2f068 <= VINWIDTH-1;         mec1a10 <= VINHEIGHT-1;      end else begin         hq2f068 <= (zxd289c>>1) + (zxd289c>>2);         mec1a10 <= (fc9cfd7>>1) + (fc9cfd7>>2);      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yzd081 <= 2'b00;      th4ab8e <= 2'b00;   end else if(ofe284f) begin      if(do1427d) begin         yzd081 <= 2'b00;         th4ab8e <= 2'b00;      end else if(icff004 && co9873f && (cb297ea==zxd289c) && enf8a5f==0) begin          if(CBANKS==2) begin            yzd081[0] <= (dzd7558 >= oseafc5) ? 1'b0 : 1'b1;            th4ab8e[0] <= (ls3f5d5 >= su43abf) ? 1'b0 : 1'b1;         end else if(CBANKS==4) begin            yzd081 <= (dzd7558 >=  oseafc5    ) ? 2'b00 :                      (dzd7558 >= (oseafc5>>1)) ? 2'b01 :                      (dzd7558 >= (oseafc5>>2)) ? 2'b10 : 2'b11;            th4ab8e <= (ls3f5d5 >=  su43abf    ) ? 2'b00 :                      (ls3f5d5 >= (su43abf>>1)) ? 2'b01 :                      (ls3f5d5 >= (su43abf>>2)) ? 2'b10 : 2'b11;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yk67978 <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         yk67978 <= 1'b1;      end else if(icff004 && co9873f && (cb297ea==zxd289c) && enf8a5f==0) begin          yk67978 <= 1'b1;      end else if(LBUFFER=="EBR") begin         if(kdc615b[2][2]) begin            yk67978 <= 1'b1;         end else if(rv3d479[2]) begin            yk67978 <= ~ls14a1d;         end      end else if(LBUFFER!="EBR") begin         if(kdc615b[1][2]) begin            yk67978 <= 1'b1;         end else if(rv3d479[1]) begin            yk67978 <= ~ls14a1d;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      zxfc559 <= {zxc2622{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         zxfc559 <= {zxc2622{1'b0}};      end else if(uvf8021) begin         zxfc559 <= (ldd76ac>1) ? 1 : {zxc2622{1'b0}};      end else if(icff004) begin         if(nrf30e7==ldd76ac-1) begin            zxfc559 <= {zxc2622{1'b0}};         end else begin            zxfc559 <= nrf30e7 + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      wlab3a9 <= {zxc2622{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         wlab3a9 <= {zxc2622{1'b0}};      end else if(uvf8021) begin         wlab3a9 <= {zxc2622{1'b0}};      end else if(ldd7f41 || (an8fcc3 && gqfd2d)) begin         if(ph1cfcc==ldd76ac-1) begin            wlab3a9 <= {zxc2622{1'b0}};         end else begin            wlab3a9 <= ph1cfcc + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kd75300 <= {zxc2622{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kd75300 <= {zxc2622{1'b0}};      end else if(uvf8021) begin         kd75300 <= {zxc2622{1'b0}};      end else if(ldd7f41 || dz7e968) begin         if(rtf99ab==ldd76ac-1) begin            kd75300 <= {zxc2622{1'b0}};         end else begin            kd75300 <= rtf99ab + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kd60100 <= {zxc2622{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kd60100 <= {zxc2622{1'b0}};      end else if(uvf8021) begin         kd60100 <= {zxc2622{1'b0}};      end else if(byf4b46) begin         if(ba357eb==ldd76ac-1) begin            kd60100 <= {zxc2622{1'b0}};         end else begin            kd60100 <= ba357eb + 1;         end      end   end
end
assign wje2ace   = (ldd76ac==1) ? 1'b1 : (  nrf30e7==ldd76ac-1);
assign os59d4c = (ldd76ac==1) ? 1'b1 : (ph1cfcc==ldd76ac-1);
assign aaa9804 = (ldd76ac==1) ? 1'b1 : (rtf99ab==ldd76ac-1);
assign wy805  = (ldd76ac==1) ? 1'b1 : ( ba357eb==ldd76ac-1);
generate   if(VFTAPS==1) begin       always @(clk) begin         pu258fc <= 1'b1;      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            pu258fc <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               pu258fc <= 1'b0;            end else if(uvf8021) begin               pu258fc <= 1'b0;            end else if(yxd32aa && me6273e) begin               pu258fc <= 1'b0;            end else if(ir3c381 && (fn5faac==(VFTAPS-hq9cbdb-2))) begin               pu258fc <= 1'b1;            end         end      end   end   if(HFTAPS==1) begin      always @(clk) begin         ir2c7e2 <= 1'b1;      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            ir2c7e2 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               ir2c7e2 <= 1'b0;            end else if(uvf8021) begin               ir2c7e2 <= 1'b0;            end else if(yxd32aa && me6273e) begin               ir2c7e2 <= 1'b0;            end else if(ldd7f41 && (ykeab3c==HFTAPS-pu2f6d0-2) && ene7e66 && (fn5faac==(VFTAPS-hq9cbdb-1))) begin               ir2c7e2 <= 1'b1;            end         end      end   end   if(HFTAPS==1) begin      always @(clk) begin         lq63f15 <= 1'b1;      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            lq63f15 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               lq63f15 <= 1'b0;            end else if(uvf8021) begin               lq63f15 <= 1'b0;            end else if(uxbb4ca && eade3f3) begin               lq63f15 <= 1'b1;            end else if(yxd32aa) begin               lq63f15 <= 1'b0;            end         end      end   end   assign pu8617d = ldd7f41 && ene7e66 && (ykeab3c==HFTAPS-pu2f6d0-2);
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      phc2cf <= {jp61807{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         phc2cf <= {jp61807{1'b0}};      end else if(uvf8021) begin         phc2cf <= (ldd76ac==1) ? 1 : {jp61807{1'b0}};      end else if(icff004 && co9873f) begin         if(cb297ea==zxd289c) begin            phc2cf <= {jp61807{1'b0}};         end else begin            phc2cf <= cb297ea + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ie1030b <= {qifb5{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ie1030b <= {qifb5{1'b0}};      end else if(uvf8021) begin         ie1030b <= {qifb5{1'b0}};      end else if(icff004 && (cb297ea==zxd289c) && co9873f) begin         if(enf8a5f==fc9cfd7) begin            ie1030b <= {qifb5{1'b0}};         end else begin            ie1030b <= enf8a5f + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      frm_resync <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         frm_resync <= 1'b0;      end else begin         frm_resync <= uvf8021 && ((enf8a5f != 0) || (cb297ea !=0 ));      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      xyb3f7 <= {qifb5{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         xyb3f7 <= {qifb5{1'b0}};      end else if(uvf8021) begin         xyb3f7 <= {qifb5{1'b0}};      end else if((!eade3f3) || (eade3f3 && ng99038)) begin         if(ir3c381 && (!zzbfa0f)) begin            xyb3f7 <= fn5faac + 1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      pscfdd8 <= {jp61807{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         pscfdd8 <= {jp61807{1'b0}};      end else if(uvf8021) begin         pscfdd8 <= {jp61807{1'b0}};      end else if(ldd7f41 && ene7e66) begin         if(ykeab3c==zxd289c) begin            pscfdd8 <= {jp61807{1'b0}};         end else begin            pscfdd8 <= ykeab3c + 1;         end      end   end
end
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            gbf7616 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               gbf7616 <= 1'b0;            end else if(uvf8021) begin               gbf7616 <= 1'b0;            end else if(ldd7f41 && ene7e66) begin               if(ykeab3c==ria273f) begin                  gbf7616 <= 1'b1;               end else begin                  gbf7616 <= 1'b0;               end            end         end      end      assign anbb0b5 = ld559e1;   end else begin      assign anbb0b5 = (ykeab3c==zxd289c);   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      alf7e89 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         alf7e89 <= 1'b0;      end else if(uvf8021) begin         alf7e89 <= 1'b0;      end else if(ir3c381)begin         if(!eade3f3 || (eade3f3 && ng99038)) begin            alf7e89 <= 1'b0;         end      end else if(icff004 && (cb297ea==zxd289c) && co9873f)begin         alf7e89 <= 1'b1;      end   end
end
generate   if(RESAMPLE=="AUTO" && YCBCR422=="TRUE" && PARALLEL=="FALSE" && VFTAPS>=4) begin       always @(posedge clk or negedge rstn) begin         if(!rstn) begin            fp38e21 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               fp38e21 <= 1'b1;            end else if(uvf8021) begin               fp38e21 <= 1'b1;            end else if(ldd7f41) begin               fp38e21 <= ~wj44271;            end         end      end      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            qi871c4 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               qi871c4 <= 1'b1;            end else if(uvf8021) begin               qi871c4 <= 1'b1;            end else if(ldd7f41 && wj44271) begin               qi871c4 <= 1'b0;            end else begin               qi871c4 <= 1'b1;            end         end      end      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            dzc2bd3 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               dzc2bd3 <= 1'b0;            end else if(jc734a2 && gqa35fd && (!kd41fa5)) begin               if(wjfd07e || rva0a46 || zzbfa0f) begin                  if(ir3c381) begin                     dzc2bd3 <= 1'b0;                  end else begin                     dzc2bd3 <= 1'b1;                  end                              end else if((wl291b0>rvb0ac5) && (rva0a46==1'b0) && (gqfd2d==1'b0)) begin                  if(ie8884e || (wl291b0>rvb0ac5+1)) begin                     dzc2bd3 <= 1'b1;                  end else begin                     dzc2bd3 <= 1'b0;                  end               end else begin                  dzc2bd3 <= 1'b0;               end            end else begin               dzc2bd3 <= 1'b0;            end         end      end   end else begin       always @(posedge clk or negedge rstn) begin         if(!rstn) begin            dzc2bd3 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               dzc2bd3 <= 1'b0;            end else if(jc734a2 && gqa35fd && (!kd41fa5)) begin               if(wjfd07e || rva0a46 || zzbfa0f) begin                  if(ir3c381) begin                     dzc2bd3 <= 1'b0;                  end else begin                     dzc2bd3 <= 1'b1;                  end                              end else if((wl291b0>rvb0ac5) && (rva0a46==1'b0) && (gqfd2d==1'b0)) begin                  dzc2bd3 <= 1'b1;               end else begin                  dzc2bd3 <= 1'b0;               end            end else begin               dzc2bd3 <= 1'b0;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ym15e9e <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ym15e9e <= 1'b0;      end else if(VFTAPS==1) begin         ym15e9e <= 1'b0;      end else if(uvf8021) begin         ym15e9e <= 1'b0;      end else if(yxd32aa && me6273e) begin         ym15e9e <= 1'b0;      end else if(ir3c381 && (fn5faac==fc9cfd7) && ng99038) begin         ym15e9e <= 1'b1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      uvd3c35 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         uvd3c35 <= 1'b0;      end else if(HFTAPS==1) begin         uvd3c35 <= 1'b0;      end else if(uvf8021) begin         uvd3c35 <= 1'b0;      end else if(yxd32aa) begin         uvd3c35 <= 1'b0;      end else if(eade3f3 && ir3c381) begin         uvd3c35 <= 1'b1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      tj9e1ad <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         tj9e1ad <= 1'b0;      end else if(HFTAPS==1) begin         tj9e1ad <= 1'b0;      end else if(uvf8021) begin         tj9e1ad <= 1'b0;      end else if(tuf1f98 && gqa35fd && (ir3c381 || kd41fa5)) begin         tj9e1ad <= 1'b1;      end else begin         tj9e1ad <= 1'b0;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      jeadc53 <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         jeadc53 <= 1'b1;      end else if(uvf8021 || yxd32aa) begin         jeadc53 <= 1'b1;      end else if(byf4b46 && irabf5a) begin         jeadc53 <= (phbab36==(lq57699));      end else if(yxe83f4 && ene7e66) begin         jeadc53 <= (xlbaeac==(lq57699));      end   end
end
assign dz714d6    = (ned5473=="TRUE") ? tj2d19e : (xlbaeac==zk5d5da);
assign ip7a786   = an8fcc3 && (ldd7f41 || gqfd2d);
assign icf0d6e = an8fcc3 && (yxe83f4 || nta5a33) && ep36c83;
assign pu86b71       = ((yxe83f4 && yk467b8) || nta5a33);
generate   if(VFTAPS<=2) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            nt92b1 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               nt92b1 <= 1'b1;            end else if(uvf8021) begin               nt92b1 <= 1'b1;            end else if(yxd32aa) begin               nt92b1 <= 1'b1;            end else if(hb5551a) begin               nt92b1 <= 1'b0;            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            nt92b1 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               nt92b1 <= 1'b0;            end else if(uvf8021) begin               nt92b1 <= 1'b0;            end else if(uxbb4ca && eade3f3) begin               nt92b1 <= 1'b1;            end else if(hb5551a) begin               nt92b1 <= 1'b0;            end         end      end   end   if(VFTAPS<=2) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            co21256 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               co21256 <= 1'b1;            end else if(uvf8021) begin               co21256 <= 1'b1;            end else if(ir3c381 && bnc4e7) begin               co21256 <= 1'b1;            end else if(ir3c381 && fne378f) begin               co21256 <= 1'b0;            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            co21256 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               co21256 <= 1'b0;            end else if(uvf8021) begin               co21256 <= 1'b0;            end else if(ir3c381 && fne378f) begin               co21256 <= 1'b0;            end else if(ir3c381 && (fn5faac==(VFTAPS-hq9cbdb-2))) begin               co21256 <= 1'b1;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      rt6e29a <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         rt6e29a <= 1'b0;      end else  begin         rt6e29a <= (lqd524a==of70313);      end   end
end
assign yz8a6b6 = (ned5473=="TRUE") ? ui68cf7 : (lqd524a==of70313);
assign dba53d1 = (eade3f3 && ir3c381 && qv33dc1);
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      wwfaba7 <= {VFCWIDTH{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         wwfaba7 <= {VFCWIDTH{1'b0}};      end else if(uvf8021) begin         wwfaba7 <= {VFCWIDTH{1'b0}};      end else if(ep70f7) begin         wwfaba7 <= xy9cf87 + xwd5636;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      mtae9c2 <= VSFACTOR;   end else if(ofe284f) begin      if(do1427d) begin         mtae9c2 <= VSFACTOR;      end else if(hoc010c && uvf8021 && VFTAPS==1) begin         mtae9c2 <= fp28e3e;      end else if(kdc6ce2) begin         mtae9c2 <= xwd5636;      end else if(ep70f7) begin         mtae9c2 <= sw3e1d5 + xwd5636;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      zma70af <= VSFACTOR<<1;   end else if(ofe284f) begin      if(do1427d) begin         zma70af <= VSFACTOR<<1;      end else if(hoc010c && uvf8021 && VFTAPS==1) begin         zma70af <= fp28e3e<<1;      end else if(kdc6ce2) begin         zma70af <= xwd5636<<1;      end else if(ep70f7) begin         zma70af <= gq87549 + xwd5636;      end   end
end
assign bl4f47c    = xy9cf87[VFCBPWIDTH-1:VFCBPWIDTH-cb33640];
assign pfc2bd6       = xy9cf87[VFCWIDTH-1:VFCBPWIDTH];
generate   if(tudaa8e=="TRUE") begin      assign jraf5b0  = sw3e1d5 [VFCWIDTH-1:VFCBPWIDTH];      assign czd6c34 = gq87549[VFCWIDTH-1:VFCBPWIDTH];   end else begin      assign jraf5b0  = ((xy9cf87 + xwd5636     )>>VFCBPWIDTH);      assign czd6c34 = ((xy9cf87 + (xwd5636<<1))>>VFCBPWIDTH);   end
endgenerate
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            cob61a5 <= ((VSFACTOR>>VFCBPWIDTH)!=0);         end else if(ofe284f) begin            if(do1427d) begin               cob61a5 <= ((VSFACTOR>>VFCBPWIDTH)!=0);            end else if(hoc010c && uvf8021 && VFTAPS==1) begin               cob61a5 <= ((fp28e3e>>VFCBPWIDTH)!=0);            end else if(kdc6ce2) begin               cob61a5 <= ((xwd5636>>VFCBPWIDTH)!=0);            end else if(ep70f7) begin               cob61a5 <= (su49299 != vv4a640);            end         end      end      assign vxb0d29  = ui53207;      assign pu8694f = !ui53207;   end else begin      assign vxb0d29  = (lqd524a!=su49299);      assign pu8694f = (lqd524a==su49299);   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      qvb1c30 <= {jp61807{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         qvb1c30 <= {jp61807{1'b0}};      end else if(uvf8021) begin         qvb1c30 <= {jp61807{1'b0}};      end else if(yxd32aa) begin         qvb1c30 <= {jp61807{1'b0}};      end else if(dz7e968 && ofccd5f && tuf1f98) begin         qvb1c30 <= zk5d5da + 1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ip70c2f <= 1;   end else if(ofe284f) begin      if(do1427d) begin         ip70c2f <= 1;      end else if(uvf8021) begin         ip70c2f <= 1;      end else if(yxd32aa) begin         ip70c2f <= 1;      end else if(dz7e968 && ofccd5f && tuf1f98) begin         ip70c2f <= lq57699 + 1;      end   end
end
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            jpd85ad <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               jpd85ad <= 1'b0;            end else if(uvf8021) begin               jpd85ad <= 1'b0;            end else if(ldd7f41 && ene7e66 && (ykeab3c==ria273f)) begin               jpd85ad <= 1'b1;            end else if(ldd7f41 && ene7e66) begin               jpd85ad <= 1'b0;            end         end      end      assign nrc2d6f  = ldd7f41 && ic67870 && ene7e66;   end else begin      assign nrc2d6f  = ldd7f41 && (ykeab3c==zxd289c) && ene7e66;   end   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            vk30beb <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               vk30beb <= 1'b0;            end else if(uvf8021) begin               vk30beb <= 1'b0;            end else if(dz7e968  && ofccd5f && (zk5d5da==ria273f) && tuf1f98) begin               vk30beb <= 1'b1;            end else if(dz7e968 && ofccd5f && tuf1f98) begin               vk30beb <= 1'b0;            end         end      end      assign qv85f5b  = dz7e968 && lqda655 && ofccd5f;   end else begin      assign qv85f5b  = dz7e968 && (zk5d5da==zxd289c) && ofccd5f;   end
endgenerate
assign xl8424a = byf4b46 && irabf5a && an8fcc3;
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      co5299 <= {HFCWIDTH{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         co5299 <= {HFCWIDTH{1'b0}};      end else if(uvf8021) begin         co5299 <= {HFCWIDTH{1'b0}};      end else if(yxd32aa) begin         co5299 <= {HFCWIDTH{1'b0}};      end else if(jeb20e1) begin         co5299 <= dz5abe2 + tu58d9c;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      pf4a645 <= HSFACTOR;   end else if(ofe284f) begin      if(do1427d) begin         pf4a645 <= HSFACTOR;      end else if(hoc010c && uvf8021 && VFTAPS==1) begin         pf4a645 <= jc471f6;      end else if(kdc6ce2) begin         pf4a645 <= tu58d9c;      end else if(yxd32aa) begin         pf4a645 <= tu58d9c;      end else if(jeb20e1) begin         pf4a645 <= bnaf8ba + tu58d9c;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      tw99178 <= (HSFACTOR<<1);   end else if(ofe284f) begin      if(do1427d) begin         tw99178 <= (HSFACTOR<<1);      end else if(hoc010c && uvf8021 && VFTAPS==1) begin         tw99178 <= (jc471f6<<1);      end else if(kdc6ce2) begin         tw99178 <= (tu58d9c<<1);      end else if(yxd32aa) begin         tw99178 <= (tu58d9c<<1);      end else if(jeb20e1) begin         tw99178 <= ipe2eba + tu58d9c;      end   end
end
assign bl45e1f = dz5abe2[HFCWIDTH-1:HFCBPWIDTH];
generate   if(tudaa8e=="TRUE") begin      assign ui787fa  = bnaf8ba [HFCWIDTH-1:HFCBPWIDTH];      assign mg1fe84 = ipe2eba[HFCWIDTH-1:HFCBPWIDTH];   end else begin      assign ui787fa  = ((dz5abe2 + tu58d9c     )>>HFCBPWIDTH);      assign mg1fe84 = ((dz5abe2 + (tu58d9c<<1))>>HFCBPWIDTH);   end
endgenerate
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            icff421 <= ((HSFACTOR>>HFCBPWIDTH)!=0);         end else if(ofe284f) begin            if(do1427d) begin               icff421 <= ((HSFACTOR>>HFCBPWIDTH)!=0);            end else if(hoc010c && uvf8021 && VFTAPS==1) begin               icff421 <= ((jc471f6>>HFCBPWIDTH)!=0);            end else if(kdc6ce2) begin               icff421 <= ((tu58d9c>>HFCBPWIDTH)!=0);            end else if(yxd32aa) begin               icff421 <= ((tu58d9c>>HFCBPWIDTH)!=0);            end else if(jeb20e1) begin               icff421 <= (phbab36 != ecacdb2);            end         end      end      assign sufa109  = by66d90;      assign vid0849 = !by66d90;   end else begin      assign sufa109  = (xlbaeac!=phbab36);      assign vid0849 = (xlbaeac==phbab36);   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ri35b8a <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ri35b8a <= 1'b0;      end else if(uvf8021) begin         ri35b8a <= 1'b0;      end else if(an8fcc3) begin         if(yxe83f4 && (phbab36==zk5d5da) && ene7e66) begin            ri35b8a <= 1'b1;         end else if(ep36c83 && irabf5a) begin            ri35b8a <= 1'b0;         end      end else begin         ri35b8a <= 1'b0;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      dzdd615 <= {blf6a60{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         dzdd615 <= {blf6a60{1'b0}};      end else if(uvf8021) begin         dzdd615 <= {blf6a60{1'b0}};      end else if(byf4b46 && irabf5a && xy8385d) begin         if(wj546bf==ls3f5d5) begin            dzdd615 <= {blf6a60{1'b0}};         end else begin            dzdd615 <= wj546bf + 1;         end      end   end
end
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            ww7d6eb <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               ww7d6eb <= 1'b0;            end else if(uvf8021) begin               ww7d6eb <= 1'b0;            end else if(byf4b46 && irabf5a && (wj546bf==ls3f5d5-1)) begin               ww7d6eb <= 1'b1;            end else if(byf4b46 && irabf5a) begin               ww7d6eb <= 1'b0;            end         end      end      assign xweb758  = byf4b46 && necaaa3 && irabf5a;   end else begin      assign xweb758  = byf4b46 && (wj546bf==ls3f5d5) && irabf5a;   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      doadfbf <= {jc48acb{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         doadfbf <= {jc48acb{1'b0}};      end else if(uvf8021) begin         doadfbf <= {jc48acb{1'b0}};      end else if(eade3f3 && ir3c381 && ng99038) begin         doadfbf <= of70313 + 1;      end   end
end
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            uv6fdfa <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               uv6fdfa <= 1'b0;            end else if(uvf8021) begin               uv6fdfa <= 1'b0;            end else if(eade3f3 && ir3c381 && ng99038) begin               if(of70313==fc9cfd7-1) begin                  uv6fdfa <= 1'b1;               end else begin                  uv6fdfa <= 1'b0;               end            end         end      end      assign fn7efd5 = jr8189c && ng99038;   end else begin      assign fn7efd5 = (of70313==fc9cfd7) && ng99038;   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      gd1dd25 <= {blf6a60{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         gd1dd25 <= {ic4c1b0{1'b0}};      end else if(uvf8021) begin         gd1dd25 <= {ic4c1b0{1'b0}};      end else if(ir3c381  && (lqd524a==of70313) && eade3f3) begin         gd1dd25 <= qia38de + 1;      end   end
end
generate   if(tudaa8e=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            jcee92c <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               jcee92c <= 1'b0;            end else if(uvf8021) begin               jcee92c <= 1'b0;            end else if(ir3c381  && (lqd524a==of70313) && eade3f3) begin               if(qia38de==dzd7558-1) begin                  jcee92c <= 1'b1;               end else begin                  jcee92c <= 1'b0;               end            end         end      end      assign vv74963 = vx1c6f1 && (lqd524a==of70313);   end else begin      assign vv74963 = (qia38de==dzd7558) && (lqd524a==of70313);   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      qva4b1f <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         qva4b1f <= 1'b0;      end else if(uvf8021) begin         qva4b1f <= 1'b0;      end else if(hb5551a) begin         qva4b1f <= fne378f;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      shf7eae <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         shf7eae <= 1'b0;      end else if(uvf8021) begin         shf7eae <= 1'b0;      end else if(yxd32aa) begin         shf7eae <= bnc4e7;      end   end
end
always @(*) begin   if(!an8fcc3) begin      pseb0af = 1'b1;   end else if(ecb641c) begin      pseb0af = !(yxe83f4&&ene7e66) && zz9ee0c;   end else begin      pseb0af = (ldd76ac==1) ? 1'b1 : mg1afe8;   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yz9ada8 <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         yz9ada8 <= 1'b1;      end else if(uvf8021) begin         yz9ada8 <= 1'b1;      end else if(an8fcc3) begin         if(byf4b46 && (ecacdb2 != xlbaeac) && irabf5a) begin            yz9ada8 <= 1'b1;         end else if(yxe83f4 && ene7e66 && zz9ee0c) begin            yz9ada8 <= 1'b0;         end      end else begin         yz9ada8 <= 1'b1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      lq5857a <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         lq5857a <= 1'b1;      end else if(uvf8021) begin         lq5857a <= 1'b1;      end else if(byf4b46 && (ba357eb==ldd76ac-2)) begin         if(ecb641c) begin            lq5857a <= 1'b0;         end else begin            lq5857a <= 1'b1;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      czd6d45 <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         czd6d45 <= 1'b1;      end else if(uvf8021) begin         czd6d45 <= 1'b1;      end else if(tuf1f98) begin         if(yxd32aa && dz40e1e) begin            czd6d45 <= 1'b1;         end else if(icff004 && (cb297ea==zxd289c) && co9873f) begin            czd6d45 <= 1'b0;         end      end else begin         czd6d45 <= 1'b1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      cob6a2d <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         cob6a2d <= 1'b0;      end else if(icff004 && (cb297ea==ria273f) && (ldd76ac==1)) begin         cob6a2d <= 1'b1;      end else if(icff004 && (cb297ea==zxd289c) && (nrf30e7==ldd76ac-2) && (ldd76ac>1)) begin         cob6a2d <= 1'b1;      end else if(icff004) begin         cob6a2d <= 1'b0;      end   end
end
always @(*) begin   if(fcb833d) begin      ready = !icff004;   end else begin      ready = kdf7067 && (!zzbfa0f);   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      rvb5168 <= 1'b0;   end else if(ofe284f)begin      if(do1427d) begin         rvb5168 <= 1'b0;      end else begin         rvb5168 <= hb5551a && fc1bc7e;      end   end
end
pmi_distributed_shift_reg  #( .pmi_data_width      (1             ),                              .pmi_regmode         ("reg"         ),                              .pmi_shiftreg_type   ("fixed"       ),                              .pmi_num_shift       (phaa39b-1),                              .pmi_num_width       (mr51cde       ),                                                            .pmi_max_shift       (phaa39b-1),                              .pmi_max_width       (mr51cde       ),                                                            .pmi_init_file       ("none"        ),                              .pmi_init_file_format("binary"      ),                              .pmi_family          (FAMILY        ),                              .module_type         ("pmi_distributed_shift_reg"))
gb54f84                   ( .Din      (rvb5168  ),                              .Addr     ({mr51cde{1'b0}} ),                              .Clock    (clk             ),                              .ClockEn  (ce              ),                              .Reset    (~rstn || sr     ),                              .Q        (fca8b46    ));
generate   if(HFTAPS==1) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            qi34a7a <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               qi34a7a <= 1'b1;            end else if(uvf8021) begin               qi34a7a <= 1'b1;            end else if(ldd7f41 && (ykeab3c==ria273f) && ene7e66) begin                qi34a7a <= ng99038;            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            qi34a7a <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               qi34a7a <= 1'b1;            end else if(uvf8021) begin               qi34a7a <= 1'b1;            end else if(ir3c381) begin                qi34a7a <= ng99038;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      vxaf4f0 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         vxaf4f0 <= 1'b0;      end else if(uvf8021) begin         vxaf4f0 <= 1'b0;      end else if(hb5551a && fc1bc7e) begin         vxaf4f0 <= 1'b0;      end else if(eade3f3 && ir3c381) begin         if(su49299==lqd524a) begin            vxaf4f0 <= 1'b1;         end else begin            vxaf4f0 <= 1'b0;         end      end   end
end
always @(*) begin   ea4958e = yz9070b && (lqd524a==of70313);
end
generate   if(HFTAPS==1) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            db16b7e <= 1'b1;            do2fadd <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               db16b7e <= 1'b1;               do2fadd <= 1'b1;            end else begin               db16b7e <= ir3c381;               do2fadd <= yxd32aa;            end         end      end      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            nr4ac70 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               nr4ac70 <= 1'b1;            end else if(uvf8021) begin               nr4ac70 <= 1'b1;            end else if(!ir3c381 && yxd32aa) begin                nr4ac70 <= fp1c2ea;            end else if(pse1c0c && tw99554) begin                nr4ac70 <= fp1c2ea;            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            nr4ac70 <= 1'b1;         end else if(ofe284f) begin            if(do1427d) begin               nr4ac70 <= 1'b1;            end else if(uvf8021) begin               nr4ac70 <= 1'b1;            end else if(yxd32aa) begin                nr4ac70 <= fp1c2ea;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      aaa6be3 <= {cm67a3c{1'b0}};      rvaf8cb <= {cm67a3c{1'b0}};      the32fa <= {cm67a3c{1'b0}};      gocbeb7 <= {cm67a3c{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         aaa6be3 <= {cm67a3c{1'b0}};         rvaf8cb <= {cm67a3c{1'b0}};         the32fa <= {cm67a3c{1'b0}};         gocbeb7 <= {cm67a3c{1'b0}};      end else begin         aaa6be3 <= blcdec0;         rvaf8cb <= ld7b03c;         the32fa <= nec0f3f;         gocbeb7 <= yz3cfdc;      end   end
end
generate   if(SHARE_CMEM=="TRUE") begin      assign zx40d74        = mrdcb5a;      assign dout        = blcdec0;      assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[3] : ww67a8f[2];      assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[3] : rv3d479[2];      assign xwee109  = (LBUFFER=="EBR") ? {zz2d6a0,kdc615b[3][7:0]} : {zz2d6a0,kdc615b[2][7:0]};   end else if(ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") begin       assign zx40d74        = sw2b37b;      assign dout        = db84acd;      assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[2] : ww67a8f[1];      assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[2] : rv3d479[1];      assign xwee109  = (LBUFFER=="EBR") ? kdc615b[2]      : kdc615b[1];   end else if(YCBCR422=="TRUE" || YCBCR444=="TRUE") begin       assign zx40d74        = sw2b37b;      assign dout        = th5a83e;       assign xwee109  = kdc615b[1];      if(ld4f0d0=="EBR") begin         assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[6] : ww67a8f[5];         assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[6] : rv3d479[5];               end else begin         assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[5] : ww67a8f[4];         assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[5] : rv3d479[4];               end   end else begin       assign zx40d74        = sw2b37b;      assign dout        = th5a83e;       assign xwee109  = kdc615b[1];      if(ld4f0d0=="EBR") begin         assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[7] : ww67a8f[6];         assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[7] : rv3d479[6];               end else begin         assign frmsync_out = (LBUFFER=="EBR") ? ww67a8f[6] : ww67a8f[5];         assign ea68cbf = (LBUFFER=="EBR") ? rv3d479[6] : rv3d479[5];               end   end   if(ADAPTIVE=="TRUE" && KERNEL=="LANCZOS") begin                                                                                                                         for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : yzbbc5c         pmi_distributed_shift_reg  #( .pmi_data_width      (DWIDTH     ),                                       .pmi_regmode         ("reg"      ),                                       .pmi_shiftreg_type   ("fixed"    ),                                       .pmi_num_shift       (jr9bd3b-1 ),                                       .pmi_num_width       (psdf2d0    ),                                                                              .pmi_max_shift       (jr9bd3b-1 ),                                       .pmi_max_width       (psdf2d0    ),                                                                              .pmi_init_file       ("none"     ),                                       .pmi_init_file_format("binary"   ),                                       .pmi_family          (FAMILY     ),                                       .module_type         ("pmi_distributed_shift_reg"))         ep2c1b                 ( .Din      (wje26be[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH]  ),                                       .Addr     ({psdf2d0{1'b0}}       ),                                       .Clock    (clk                   ),                                       .ClockEn  (ce                    ),                                       .Reset    (~rstn || sr           ),                                       .Q        (ir856eb[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH] ));      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ld45a32 <= {8{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ld45a32 <= {8{1'b0}};      end else begin         ld45a32[0]   <= (byf4b46 && (qia38de==0) && (wj546bf==0) && (ba357eb==0) && xy8385d && fae1757 && yz9070b);         ld45a32[7:1] <= ww67a8f[6:0];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      rv2d197 <= {8{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         rv2d197 <= {8{1'b0}};      end else begin         rv2d197[0]   <= eade3f3 && (ldd7f41 || (an8fcc3 && gqfd2d));         rv2d197[7:1] <= rv3d479[6:0];      end   end
end
assign tw2014a   = dz5abe2[HFCBPWIDTH-1:HFCBPWIDTH-thc8175];
assign do9cc28    = (zk5d5da<pu2f6d0);
assign nre6142    = (zk5d5da>=(zxd289c-qi82e13));
assign ri30a16    = (zk5d5da==(zxd289c-qi82e13));
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kdc615b[0] <= {an12cda{1'b0}};      kdc615b[1] <= {an12cda{1'b0}};      kdc615b[2] <= {an12cda{1'b0}};      kdc615b[3] <= {an12cda{1'b0}};      kdc615b[4] <= {an12cda{1'b0}};      kdc615b[5] <= {an12cda{1'b0}};      kdc615b[6] <= {an12cda{1'b0}};      kdc615b[7] <= {an12cda{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kdc615b[0] <= {an12cda{1'b0}};         kdc615b[1] <= {an12cda{1'b0}};         kdc615b[2] <= {an12cda{1'b0}};         kdc615b[3] <= {an12cda{1'b0}};         kdc615b[4] <= {an12cda{1'b0}};         kdc615b[5] <= {an12cda{1'b0}};         kdc615b[6] <= {an12cda{1'b0}};         kdc615b[7] <= {an12cda{1'b0}};      end else begin         kdc615b[0] <= {shfd6af,an8fcc3&gqfd2d,jcda376,god1bb2,ec8dd90,an8fcc3,yxd32aa,dz7e968&tuf1f98,byf4b46&xy8385d&fae1757};         kdc615b[1] <= {shfd6af,kdc615b[0][7:0]};          kdc615b[2] <= kdc615b[1];         kdc615b[3] <= kdc615b[2];         kdc615b[4] <= kdc615b[3];         kdc615b[5] <= kdc615b[4];         kdc615b[6] <= kdc615b[5];         kdc615b[7] <= kdc615b[6];      end   end
end
generate   if(hq9cbdb==0) begin       always @(posedge clk or negedge rstn) begin         if(!rstn) begin            lq57ba0[0] <= {VFTAPS{1'b0}};            lq57ba0[1] <= {VFTAPS{1'b0}};            lq57ba0[2] <= {VFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               lq57ba0[0] <= {VFTAPS{1'b0}};               lq57ba0[1] <= {VFTAPS{1'b0}};               lq57ba0[2] <= {VFTAPS{1'b0}};            end else begin               if(uvf8021) begin                  lq57ba0[0] <= {VFTAPS{1'b0}};               end else if(eade3f3 && ir3c381 && ng99038 && (of70313<hq9cbdb)) begin                  lq57ba0[0] <= lq57ba0[0]<<1;               end               lq57ba0[1] <= lq57ba0[0];               lq57ba0[2] <= lq57ba0[1];            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            lq57ba0[0] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};            lq57ba0[1] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};            lq57ba0[2] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};         end else if(ofe284f) begin            if(do1427d) begin               lq57ba0[0] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};               lq57ba0[1] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};               lq57ba0[2] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};            end else begin               if(uvf8021) begin                  lq57ba0[0] <= {{hq9cbdb{1'b1}},{(VFTAPS-hq9cbdb){1'b0}}};               end else if(eade3f3 && ir3c381 && ng99038 && (of70313<hq9cbdb)) begin                  lq57ba0[0] <= lq57ba0[0]<<1;               end               lq57ba0[1] <= lq57ba0[0];               lq57ba0[2] <= lq57ba0[1];            end         end      end   end
endgenerate
generate   if(VFTAPS==1) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            jcee81b[0] <= {VFTAPS{1'b0}};            jcee81b[1] <= {VFTAPS{1'b0}};            jcee81b[2] <= {VFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               jcee81b[0] <= {VFTAPS{1'b0}};               jcee81b[1] <= {VFTAPS{1'b0}};               jcee81b[2] <= {VFTAPS{1'b0}};            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            jcee81b[0] <= {VFTAPS{1'b0}};            jcee81b[1] <= {VFTAPS{1'b0}};            jcee81b[2] <= {VFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               jcee81b[0] <= {VFTAPS{1'b0}};               jcee81b[1] <= {VFTAPS{1'b0}};               jcee81b[2] <= {VFTAPS{1'b0}};            end else begin               if(uvf8021) begin                  jcee81b[0] <= {VFTAPS{1'b0}};               end else if(eade3f3 && ir3c381 && ng99038) begin                  if(of70313>=(fc9cfd7-godb417)) begin                     jcee81b[0] <= {jcee81b[0][VFTAPS-2:0],1'b1};                  end else begin                     jcee81b[0] <= {VFTAPS{1'b0}};                  end               end               jcee81b[1] <= jcee81b[0];               jcee81b[2] <= jcee81b[1];            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ose0bd9[0] <= {vx22f80{1'b0}};      ose0bd9[1] <= {vx22f80{1'b0}};      ose0bd9[2] <= {vx22f80{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ose0bd9[0] <= {vx22f80{1'b0}};         ose0bd9[1] <= {vx22f80{1'b0}};         ose0bd9[2] <= {vx22f80{1'b0}};      end else begin         if(uvf8021) begin            ose0bd9[0] <= {vx22f80{1'b0}};         end else if(eade3f3 && ir3c381 && ng99038) begin            ose0bd9[0] <= ose0bd9[0] + 1;         end         ose0bd9[1] <= ose0bd9[0];         ose0bd9[2] <= ose0bd9[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ipd9057[0] <= {wl80f68{1'b0}};      ipd9057[1] <= {wl80f68{1'b0}};      ipd9057[2] <= {wl80f68{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ipd9057[0] <= {wl80f68{1'b0}};         ipd9057[1] <= {wl80f68{1'b0}};         ipd9057[2] <= {wl80f68{1'b0}};      end else begin         if(eade3f3 && ir3c381 && ng99038) begin            if(of70313==(fc9cfd7-godb417))               ipd9057[0] <= {wl80f68{1'b0}};            else               ipd9057[0] <= ipd9057[0] + 1;         end         ipd9057[1] <= ipd9057[0];         ipd9057[2] <= ipd9057[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      lsbf13[0] <= 1'b0;      lsbf13[1] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         lsbf13[0] <= 1'b0;         lsbf13[1] <= 1'b0;      end else begin         lsbf13[0] <= ldd7f41;         lsbf13[1] <= dm79c25[0];      end   end
end
generate   for(tj1c509=VFTAPS-1-hq9cbdb;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : hbd80b9      assign qgdbdfa[tj1c509] = (LBUFFER=="EBR") ?    lq57ba0[2][tj1c509] :    lq57ba0[1][tj1c509];   end   for(tj1c509=0;tj1c509<godb417;tj1c509=tj1c509+1) begin : mg5288      assign qgdbdfa[tj1c509] = (LBUFFER=="EBR") ? jcee81b[2][tj1c509] : jcee81b[1][tj1c509];   end   if(EDGEMODE=="VALUE") begin      for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : wwc470a         assign nta06de[tj1c509] = EDGEVALUE;      end   end else if(EDGEMODE=="COPY") begin      assign pu2f641 = (LBUFFER=="EBR") ? ose0bd9[2] : ose0bd9[1];      assign uv415ee = (LBUFFER=="EBR") ? ipd9057[2] : ipd9057[1];      for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : sw3b01e         assign nta06de[tj1c509] = (tj1c509<godb417) ? vk899c9[ipf73a0+1] : vk899c9[VFTAPS-1-hq9cbdb+wl7dce];      end   end else if(EDGEMODE=="MIRROR") begin      assign pu2f641 = (LBUFFER=="EBR") ? ose0bd9[2] : ose0bd9[1];      assign uv415ee = (LBUFFER=="EBR") ? ipd9057[2] : ipd9057[1];      for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : yz85f43         assign nta06de[tj1c509] = (tj1c509<godb417) ? vk899c9[(ipf73a0<<1)+1-tj1c509] : vk899c9[(godb417<<1)+1-tj1c509+(wl7dce<<1)];      end   end   assign rt5f89a = (LBUFFER=="EBR") ? dm79c25[1] : dm79c25[0];   for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : kqcb1f9      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            vi7c2fc[tj1c509] <= {DWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               vi7c2fc[tj1c509] <= {DWIDTH{1'b0}};            end else if(eace12b) begin               vi7c2fc[tj1c509] <= (osce829[tj1c509]==1'b1) ? nta06de[tj1c509] : vk899c9[tj1c509];            end         end      end      assign wje26be[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH] = vi7c2fc[tj1c509];      assign of5bae0[tj1c509] = dout[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH];   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yk59125[0] <= 1'b0;      yk59125[1] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         yk59125[0] <= 1'b0;         yk59125[1] <= 1'b0;      end else begin         yk59125[0] <= ldd7f41 && (!eade3f3 || (eade3f3&&ng99038));         yk59125[1] <= kf8562f[0];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      cz4b224 <= 1;   end else if(ofe284f) begin      if(do1427d) begin         cz4b224 <= 1;      end else if(uvf8021) begin         cz4b224 <= 1;      end else if(ldd7f41 && swacf0e && ene7e66) begin         cz4b224 <= 1;      end else if(ldd7f41) begin         cz4b224 <= rvb0ac5 + 1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kf392c8 <= {ay7726d{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kf392c8 <= {ay7726d{1'b0}};      end else if(uvf8021) begin         kf392c8 <= {ay7726d{1'b0}};      end else if(ldd7f41 && swacf0e && ene7e66) begin         kf392c8 <= {ay7726d{1'b0}};      end else if(ldd7f41) begin         kf392c8 <= ea46c2b + 1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ip4494f[0] <= {ay7726d{1'b0}};      ip4494f[1] <= {ay7726d{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ip4494f[0] <= {ay7726d{1'b0}};         ip4494f[1] <= {ay7726d{1'b0}};      end else begin         ip4494f[0] <= ea46c2b;         ip4494f[1] <= ip4494f[0];      end   end
end
generate
begin : yxedad7   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         osfa267 <= {ay7726d{1'b0}};      end else if(ofe284f) begin         if(do1427d) begin            osfa267 <= {ay7726d{1'b0}};         end else if(uvf8021) begin            osfa267 <= 1;         end else if(icff004) begin            if(cb297ea==zxd289c && co9873f) begin               osfa267 <= {ay7726d{1'b0}};            end else begin               osfa267 <= wl291b0 + 1;            end         end      end   end   for(tj1c509=0;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : kqd1c76      assign  vk899c9[tj1c509] = ui7d0e6[tj1c509];   end   assign pu253e8[0] = lq5df83;   assign osdefd1    = icff004;   for(tj1c509=1;tj1c509<VFTAPS;tj1c509=tj1c509+1) begin : xl9e93f      assign  pu253e8[tj1c509] = ui7d0e6[tj1c509-1];   end   assign  kq43985 = (LBUFFER=="EBR") ?    kf8562f[1] : kf8562f[0];   assign dze6146 = (LBUFFER=="EBR") ? ip4494f[1] : ip4494f[0];   assign ux851b3 = ea46c2b;   for(tj1c509=0;tj1c509<VFTAPS-1;tj1c509=tj1c509+1) begin : xw66b94      assign yk46ce6[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH] = pu253e8[tj1c509+1];      assign ui7d0e6[tj1c509+1] = tj9b46e[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH];   end      if(LBUFFER=="EBR") begin : dz74b39      pmi_ram_dp   #(                      .pmi_wr_addr_depth   (uk2ebb9         ),                     .pmi_wr_addr_width   (ay7726d          ),                     .pmi_wr_data_width   (DWIDTH           ),                     .pmi_rd_addr_depth   (uk2ebb9         ),                     .pmi_rd_addr_width   (ay7726d          ),                     .pmi_rd_data_width   (DWIDTH           ),                     .pmi_regmode         ("reg"            ),                     .pmi_gsr             ("disable"        ),                     .pmi_resetmode       ("sync"           ),                     .pmi_init_file       ("none"           ),                     .pmi_init_file_format("binary"         ),                     .pmi_family          (FAMILY           ),                     .module_type         ("pmi_ram_dp"     ))      hda0ab2       (                     .Data                (pu253e8[0]         ),                     .WrAddress           (osfa267           ),                     .RdAddress           (ux851b3       ),                     .WrClock             (clk              ),                     .RdClock             (clk              ),                     .WrClockEn           (ce               ),                     .RdClockEn           (ce               ),                     .WE                  (osdefd1            ),                     .Reset               (~rstn || sr      ),                     .Q                   (ui7d0e6[0]        ));      pmi_ram_dp  #(                      .pmi_wr_addr_depth   (uk2ebb9         ),                     .pmi_wr_addr_width   (ay7726d          ),                     .pmi_wr_data_width   (ui68b3d       ),                     .pmi_rd_addr_depth   (uk2ebb9         ),                     .pmi_rd_addr_width   (ay7726d          ),                     .pmi_rd_data_width   (ui68b3d       ),                     .pmi_regmode         ("reg"            ),                     .pmi_gsr             ("disable"        ),                     .pmi_resetmode       ("sync"           ),                     .pmi_init_file       ("none"           ),                     .pmi_init_file_format("binary"         ),                     .pmi_family          (FAMILY           ),                     .module_type         ("pmi_ram_dp"     ))      ls103c      (                     .Data                (yk46ce6       ),                     .WrAddress           (dze6146       ),                     .RdAddress           (ux851b3       ),                     .WrClock             (clk              ),                     .RdClock             (clk              ),                     .WrClockEn           (ce               ),                     .RdClockEn           (ce               ),                     .WE                  (kq43985        ),                     .Reset               (~rstn || sr      ),                     .Q                   (ukb3985      ));   end else begin      pmi_distributed_dpram  #(                      .pmi_addr_depth      (uk2ebb9         ),                     .pmi_addr_width      (ay7726d          ),                     .pmi_data_width      (DWIDTH           ),                     .pmi_regmode         ("reg"            ),                     .pmi_init_file       ("none"           ),                     .pmi_init_file_format("binary"         ),                     .pmi_family          (FAMILY           ),                     .module_type         ("pmi_distributed_dpram"))      sj9a240   (                     .Data                (pu253e8[0]         ),                     .WrAddress           (osfa267           ),                     .WE                  (osdefd1            ),                     .WrClock             (clk              ),                     .WrClockEn           (ce               ),                     .RdAddress           (ux851b3       ),                     .RdClock             (clk              ),                     .RdClockEn           (ce               ),                     .Reset               (~rstn || sr      ),                     .Q                   (ui7d0e6[0]        ));      pmi_distributed_dpram  #(                      .pmi_addr_depth      (uk2ebb9         ),                     .pmi_addr_width      (ay7726d          ),                     .pmi_data_width      (ui68b3d       ),                     .pmi_regmode         ("reg"            ),                     .pmi_init_file       ("none"           ),                     .pmi_init_file_format("binary"         ),                     .pmi_family          (FAMILY           ),                     .module_type         ("pmi_distributed_dpram"))      ep39557      (                     .Data                (yk46ce6       ),                     .WrAddress           (dze6146       ),                     .WE                  (kq43985        ),                     .WrClock             (clk              ),                     .WrClockEn           (ce               ),                     .RdAddress           (ux851b3       ),                     .RdClock             (clk              ),                     .RdClockEn           (ce               ),                     .Reset               (~rstn || sr      ),                     .Q                   (ukb3985      ));   end
end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kf850b3   <= 1'b0;      fp2859c <= {3{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kf850b3   <= 1'b0;         fp2859c <= {3{1'b0}};      end else begin         kf850b3   <= !eade3f3 || hb5551a || yxd32aa;         fp2859c <= {fa7640f[1:0],rt6ec81};      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      uid1f3d[0] <= {cb33640{1'b0}};      uid1f3d[1] <= {cb33640{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         uid1f3d[0] <= {cb33640{1'b0}};         uid1f3d[1] <= {cb33640{1'b0}};      end else begin         uid1f3d[0] <= (SHARE_CMEM=="TRUE") ? ((rt6ec81) ? enc3dee : shfd6af) : enc3dee;         uid1f3d[1] <= uid1f3d[0];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      anbe9af <= {cm67a3c{1'b0}};      kqfadc6 <= {by47874{1'b0}};      jeb7185<= {by47874{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         anbe9af <= {cm67a3c{1'b0}};         kqfadc6 <= {by47874{1'b0}};         jeb7185<= {by47874{1'b0}};      end else begin         anbe9af <= db84acd;         jeb7185<= sw2b37b;         if(fa7640f[2] && (LBUFFER=="EBR")) begin            kqfadc6 <= sw2b37b;         end else if(fa7640f[1] && (LBUFFER!="EBR")) begin            kqfadc6 <= sw2b37b;         end      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      jr3d11d[0] <= {cb33640{1'b0}};      jr3d11d[1] <= {cb33640{1'b0}};      jr3d11d[2] <= {cb33640{1'b0}};      jr3d11d[3] <= {cb33640{1'b0}};      jr3d11d[4] <= {cb33640{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         jr3d11d[0] <= {cb33640{1'b0}};         jr3d11d[1] <= {cb33640{1'b0}};         jr3d11d[2] <= {cb33640{1'b0}};         jr3d11d[3] <= {cb33640{1'b0}};         jr3d11d[4] <= {cb33640{1'b0}};      end else begin         jr3d11d[0] <= wjf7ba3;         jr3d11d[1] <= jr3d11d[0];         jr3d11d[2] <= jr3d11d[1];         jr3d11d[3] <= jr3d11d[2];         jr3d11d[4] <= jr3d11d[3];      end   end
end
generate   assign kf9afa6 = wl8f384;   if(SHARE_CMEM=="TRUE") begin      if(LBUFFER=="EBR") begin         assign ne7cf44 = (ld4f0d0=="EBR") ? uid1f3d[0] : uid1f3d[1];      end else begin         assign ne7cf44 = (ld4f0d0=="EBR") ? ((rt6ec81) ? enc3dee : shfd6af) : uid1f3d[0];      end   end else begin      if(LBUFFER=="EBR") begin         assign ne7cf44 = (ld4f0d0=="EBR") ? uid1f3d[0] : uid1f3d[1];      end else begin         assign ne7cf44 = (ld4f0d0=="EBR") ? enc3dee : uid1f3d[0];      end   end   if(ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") begin      assign gb44774 = wjf7ba3;   end else if(YCBCR422=="TRUE" || YCBCR444=="TRUE") begin       assign gb44774 = (ld4f0d0=="EBR") ? jr3d11d[3] : jr3d11d[2];   end else begin       assign gb44774 = (ld4f0d0=="EBR") ? jr3d11d[4] : jr3d11d[3];   end   if(KERNEL=="NEAREST" || KERNEL=="BILINEAR") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            dz71f0b[0] <= {CWIDTH{1'b0}};            dz71f0b[1] <= {CWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               dz71f0b[0] <= {CWIDTH{1'b0}};               dz71f0b[1] <= {CWIDTH{1'b0}};            end else begin               dz71f0b[0] <= dmee8e3;               if(dmee8e3==0) begin                  dz71f0b[1] <= (1<<CWIDTH) - 1;               end else begin                  dz71f0b[1] <= (1<<CWIDTH) - {1'b0,dmee8e3};               end            end         end      end      assign wwc1c7c = {dz71f0b[1],dz71f0b[0]};   end else begin      if(CBANKS==1) begin : rvc45c         if(ld4f0d0=="EBR") begin : tw11730            pmi_rom #(                      .pmi_addr_depth        (1<<cb33640    ),                      .pmi_addr_width        (cb33640       ),                      .pmi_data_width        (by47874    ),                      .pmi_regmode           ("reg"         ),                      .pmi_gsr               ("disable"     ),                      .pmi_resetmode         ("sync"        ),                      .pmi_init_file         (fc144b3    ),                      .pmi_init_file_format  ("binary"      ),                      .pmi_family            (FAMILY        ),                      .module_type           ("pmi_rom"     ))            ng1e192 (.Address      (gb44774  ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end else begin : zz917c0            pmi_distributed_rom #(                      .pmi_addr_depth       (1<<cb33640    ),                      .pmi_addr_width       (cb33640       ),                      .pmi_data_width       (by47874    ),                      .pmi_regmode          ("reg"         ),                      .pmi_init_file        (fc144b3    ),                      .pmi_init_file_format ("binary"      ),                      .pmi_family           (FAMILY        ),                      .module_type          ("pmi_distributed_rom"))            ng1e192 (.Address      (gb44774  ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end      end else begin : ph6878         if(KERNEL=="CUSTOM") begin            assign zzb59e5 = blf67f0[jp5a0b1-1:0];         end else if(ADAPTIVE=="FALSE") begin            assign zzb59e5 = ho57e29[jp5a0b1-1:0];         end else begin            assign zzb59e5 = (cze2943==1'b1) ? ho57e29[jp5a0b1-1:0] : 0;         end         assign gd3cbc1 = (YCBCR422=="TRUE") ? ls14a1d : 1'b1;         bld78ec_Scaler #( .fa66a78      (fa66a78     ),                        .qv1d9c7        (VFTAPS     ),                        .shc3438  (shc3438 ),                        .YCBCR422    (YCBCR422   ),                        .YCBCR444    (YCBCR444   ),                        .uk87d73     ("TRUE"     ),                        .EDGE_TH     (EDGE_TH    ))         qvae601       ( .clk         (clk        ),                        .rstn        (rstn       ),                        .ce          (ofe284f         ),                        .sr          (do1427d         ),                        .dvalid_in   (vxa50ea  ),                        .din         (db84acd      ),                        .yzbb3a0      (ukacf2f  ));         if(ld4f0d0=="EBR") begin : tw11730            pmi_rom #(                      .pmi_addr_depth        (1<<(cb33640+jp5a0b1)),                      .pmi_addr_width        (cb33640+jp5a0b1     ),                      .pmi_data_width        (by47874    ),                      .pmi_regmode           ("reg"         ),                      .pmi_gsr               ("disable"     ),                      .pmi_resetmode         ("sync"        ),                      .pmi_init_file         (fc144b3    ),                      .pmi_init_file_format  ("binary"      ),                      .pmi_family            (FAMILY        ),                      .module_type           ("pmi_rom"     ))            ng1e192 (.Address      ({zzb59e5,gb44774} ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end else begin : zz917c0            pmi_distributed_rom #(                      .pmi_addr_depth       (1<<(cb33640+jp5a0b1)),                      .pmi_addr_width       (cb33640+jp5a0b1     ),                      .pmi_data_width       (by47874    ),                      .pmi_regmode          ("reg"         ),                      .pmi_init_file        (fc144b3    ),                      .pmi_init_file_format ("binary"      ),                      .pmi_family           (FAMILY        ),                      .module_type          ("pmi_distributed_rom"))            ng1e192 (.Address      ({zzb59e5,gb44774} ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};icff004<=sud1e18[3];uvf8021<=sud1e18[4];hoc010c<=sud1e18[5];nt37228<={vxa03ba>>1,sud1e18[6]};cob9147<={hq1dd7>>1,sud1e18[7]};vvc8a38<={jeeebb>>1,sud1e18[8]};xj451c7<={yk775da>>1,sud1e18[9]};fp28e3e<={phbaed1>>1,sud1e18[10]};jc471f6<={vvd768e>>1,sud1e18[11]};blf67f0<={ph8ed50>>1,sud1e18[12]};jc734a2<=sud1e18[13];zxd289c<={ec1fa17>>1,sud1e18[14]};ria273f<={ofe85cc>>1,sud1e18[15]};fc9cfd7<={gd1732a>>1,sud1e18[16]};ls3f5d5<={ofccaa1>>1,sud1e18[17]};dzd7558<={je2a86d>>1,sud1e18[18]};xwd5636<={sja1b5d>>1,sud1e18[19]};tu58d9c<={ea6d765>>1,sud1e18[20]};kdc6ce2<=sud1e18[21];ep36714<=sud1e18[22];ls9c528<={zzb59e5>>1,sud1e18[23]};cze2943<=sud1e18[24];ls14a1d<=sud1e18[25];vxa50ea<=sud1e18[26];su43abf<={hq2f068>>1,sud1e18[27]};oseafc5<={mec1a10>>1,sud1e18[28]};ho57e29<={yzd081>>1,sud1e18[29]};enf8a5f<={ie1030b>>1,sud1e18[30]};cb297ea<={phc2cf>>1,sud1e18[31]};fn5faac<={xyb3f7>>1,sud1e18[32]};ykeab3c<={pscfdd8>>1,sud1e18[33]};ld559e1<=sud1e18[34];swacf0e<=sud1e18[35];ic67870<=sud1e18[36];ir3c381<=sud1e18[37];pse1c0c<=sud1e18[38];of70313<={doadfbf>>1,sud1e18[39]};jr8189c<=sud1e18[40];bnc4e7<=sud1e18[41];me6273e<=sud1e18[42];xy9cf87<={wwfaba7>>1,sud1e18[43]};sw3e1d5<={mtae9c2>>1,sud1e18[44]};gq87549<={zma70af>>1,sud1e18[45]};lqd524a<={pfc2bd6>>1,sud1e18[46]};su49299<={jraf5b0>>1,sud1e18[47]};vv4a640<={czd6c34>>1,sud1e18[48]};ui53207<=sud1e18[49];ng99038<=sud1e18[50];thc81c3<=sud1e18[51];dz40e1e<=sud1e18[52];ep70f7<=sud1e18[53];enc3dee<={bl4f47c>>1,sud1e18[54]};wjf7ba3<={ne7cf44>>1,sud1e18[55]};dmee8e3<={gb44774>>1,sud1e18[56]};qia38de<={gd1dd25>>1,sud1e18[57]};vx1c6f1<=sud1e18[58];fne378f<=sud1e18[59];fc1bc7e<=sud1e18[60];eade3f3<=sud1e18[61];tuf1f98<=sud1e18[62];an8fcc3<=sud1e18[63];nrf30e7<={zxfc559>>1,sud1e18[64]};co9873f<=sud1e18[65];ph1cfcc<={wlab3a9>>1,sud1e18[66]};ene7e66<=sud1e18[67];rtf99ab<={kd75300>>1,sud1e18[68]};ofccd5f<=sud1e18[69];ba357eb<={kd60100>>1,sud1e18[70]};irabf5a<=sud1e18[71];shfd6af<={tw2014a>>1,sud1e18[72]};dz5abe2<={co5299>>1,sud1e18[73]};bnaf8ba<={pf4a645>>1,sud1e18[74]};ipe2eba<={tw99178>>1,sud1e18[75]};xlbaeac<={bl45e1f>>1,sud1e18[76]};phbab36<={ui787fa>>1,sud1e18[77]};ecacdb2<={mg1fe84>>1,sud1e18[78]};by66d90<=sud1e18[79];ep36c83<=sud1e18[80];ecb641c<=sud1e18[81];jeb20e1<=sud1e18[82];yz9070b<=sud1e18[83];xy8385d<=sud1e18[84];fp1c2ea<=sud1e18[85];fae1757<=sud1e18[86];zk5d5da<={qvb1c30>>1,sud1e18[87]};lq57699<={ip70c2f>>1,sud1e18[88]};uxbb4ca<=sud1e18[89];lqda655<=sud1e18[90];yxd32aa<=sud1e18[91];tw99554<=sud1e18[92];necaaa3<=sud1e18[93];hb5551a<=sud1e18[94];wj546bf<={dzdd615>>1,sud1e18[95]};gqa35fd<=sud1e18[96];mg1afe8<=sud1e18[97];ldd7f41<=sud1e18[98];zzbfa0f<=sud1e18[99];wjfd07e<=sud1e18[100];yxe83f4<=sud1e18[101];kd41fa5<=sud1e18[102];gqfd2d<=sud1e18[103];dz7e968<=sud1e18[104];byf4b46<=sud1e18[105];nta5a33<=sud1e18[106];tj2d19e<=sud1e18[107];ui68cf7<=sud1e18[108];yk467b8<=sud1e18[109];qv33dc1<=sud1e18[110];zz9ee0c<=sud1e18[111];kdf7067<=sud1e18[112];fcb833d<=sud1e18[113];qgc19ea<=sud1e18[114];fpcf51<=sud1e18[115];ww67a8f<={ld45a32>>1,sud1e18[116]};rv3d479<={rv2d197>>1,sud1e18[117]};icea3ce<=sud1e18[118];wl8f384<={wwc1c7c>>1,sud1e18[119]};dm79c25<={lsbf13>>1,sud1e18[120]};eace12b<=sud1e18[121];db84acd<={wje26be>>1,sud1e18[122]};sw2b37b<={kf9afa6>>1,sud1e18[123]};blcdec0<={anbe9af>>1,sud1e18[124]};ld7b03c<={aaa6be3>>1,sud1e18[125]};nec0f3f<={rvaf8cb>>1,sud1e18[126]};yz3cfdc<={the32fa>>1,sud1e18[127]};je3f72d<={gocbeb7>>1,sud1e18[128]};mrdcb5a<={kqfadc6>>1,sud1e18[129]};zz2d6a0<={jeb7185>>1,sud1e18[130]};th5a83e<={ir856eb>>1,sud1e18[131]};med41f7<=sud1e18[132];wl7dce<={pu2f641>>1,sud1e18[133]};ipf73a0<={uv415ee>>1,sud1e18[134]};osce829<={qgdbdfa>>1,sud1e18[135]};pf74148<=sud1e18[136];rva0a46<=sud1e18[137];wl291b0<={osfa267>>1,sud1e18[138]};ea46c2b<={kf392c8>>1,sud1e18[139]};rvb0ac5<={cz4b224>>1,sud1e18[140]};kf8562f<={yk59125>>1,sud1e18[141]};co2b17c<=sud1e18[142];xwc5f02<={dze6146>>1,sud1e18[143]};dm7c09b<={ux851b3>>1,sud1e18[144]};wl26d1<={yk46ce6>>1,sud1e18[145]};tj9b46e<={ukb3985>>1,sud1e18[146]};jcda376<=sud1e18[147];god1bb2<=sud1e18[148];ec8dd90<=sud1e18[149];rt6ec81<=sud1e18[150];fa7640f<={fp2859c>>1,sud1e18[151]};kf903db<={db1673a>>1,sud1e18[152]};ksf6ef<={vk9ceb0>>1,sud1e18[153]};godbbcf<={ri3ac14>>1,sud1e18[154]};cmef3ce<={ntb0514>>1,sud1e18[155]};rgcf383<={ls14530>>1,sud1e18[156]};wwce0db<={xy14c1b>>1,sud1e18[157]};fc836cc<={tw306d0>>1,sud1e18[158]};icdb31a<={ri1b413>>1,sud1e18[159]};ofcc684<={jcd04d2>>1,sud1e18[160]};qi1a122<={db13499>>1,sud1e18[161]};vx84882<={bld2674>>1,sud1e18[162]};qi24417<=sud1e18[163];vx220b9<=sud1e18[164];co105ce<=sud1e18[165];co82e71<=sud1e18[166];wyb9c44<={zz32438>>1,sud1e18[167]};ld71109<={oh90e38>>1,sud1e18[168]};ie8884e<=sud1e18[169];wj44271<=sud1e18[170];end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=dvalid_in;ec1a3c3[2040]<=frmsync_in;ec1a3c3[2033]<=fpbf6f1;ec1a3c3[2019]<=vxa03ba[0];ec1a3c3[2004]<=ri30a16;ec1a3c3[1999]<=anbb0b5;ec1a3c3[1991]<=hq1dd7[0];ec1a3c3[1981]<=pu8694f;ec1a3c3[1960]<=kf850b3;ec1a3c3[1958]<=gb44774[0];ec1a3c3[1950]<=jpd85ad;ec1a3c3[1947]<=shf7eae;ec1a3c3[1934]<=jeeebb[0];ec1a3c3[1914]<=qi34a7a;ec1a3c3[1906]<=tj9e1ad;ec1a3c3[1894]<=ir856eb[0];ec1a3c3[1892]<=ea6d765[0];ec1a3c3[1873]<=fp2859c[0];ec1a3c3[1868]<=gd1dd25[0];ec1a3c3[1852]<=nrc2d6f;ec1a3c3[1851]<=ofe85cc[0];ec1a3c3[1847]<=wwfaba7[0];ec1a3c3[1839]<=kq43985;ec1a3c3[1830]<=jeadc53;ec1a3c3[1821]<=lq5857a;ec1a3c3[1820]<=yk775da[0];ec1a3c3[1819]<=vid0849;ec1a3c3[1783]<=czd6c34[0];ec1a3c3[1780]<=dba53d1;ec1a3c3[1772]<=gocbeb7[0];ec1a3c3[1765]<=kf392c8[0];ec1a3c3[1764]<=icf0d6e;ec1a3c3[1741]<=zkeb82f;ec1a3c3[1737]<=qv29eb5;ec1a3c3[1733]<=qvb1c30[0];ec1a3c3[1701]<=pu99d32;ec1a3c3[1698]<=db1673a[0];ec1a3c3[1689]<=jcee92c;ec1a3c3[1665]<=fca8b46;ec1a3c3[1657]<=db16b7e;ec1a3c3[1654]<=gd1732a[0];ec1a3c3[1649]<=ui787fa[0];ec1a3c3[1647]<=mtae9c2[0];ec1a3c3[1646]<=qgdbdfa[0];ec1a3c3[1631]<=dze6146[0];ec1a3c3[1613]<=rt6e29a;ec1a3c3[1610]<=ukacf2f;ec1a3c3[1608]<=zxfc559[0];ec1a3c3[1595]<=dzc2bd3;ec1a3c3[1593]<=phbaed1[0];ec1a3c3[1590]<=xl8424a;ec1a3c3[1582]<=vk30beb;ec1a3c3[1525]<=do9cc28;ec1a3c3[1523]<=pscfdd8[0];ec1a3c3[1519]<=cob61a5;ec1a3c3[1513]<=bl4f47c[0];ec1a3c3[1497]<=kqfadc6[0];ec1a3c3[1483]<=cz4b224[0];ec1a3c3[1481]<=pu86b71;ec1a3c3[1479]<=dzdd615[0];ec1a3c3[1436]<=tw99178[0];ec1a3c3[1435]<=pu2f641[0];ec1a3c3[1426]<=vv4f5ac;ec1a3c3[1419]<=ip70c2f[0];ec1a3c3[1404]<=phc2cf[0];ec1a3c3[1355]<=cmce992;ec1a3c3[1348]<=vk9ceb0[0];ec1a3c3[1330]<=vv74963;ec1a3c3[1324]<=zz32438[0];ec1a3c3[1299]<=ntb0514[0];ec1a3c3[1282]<=ld45a32[0];ec1a3c3[1267]<=doadfbf[0];ec1a3c3[1260]<=ofccaa1[0];ec1a3c3[1251]<=mg1fe84[0];ec1a3c3[1246]<=zma70af[0];ec1a3c3[1245]<=aaa6be3[0];ec1a3c3[1244]<=osdefd1;ec1a3c3[1236]<=db13499[0];ec1a3c3[1232]<=czd6d45;ec1a3c3[1225]<=pu258fc;ec1a3c3[1214]<=ux851b3[0];ec1a3c3[1202]<=qi871c4;ec1a3c3[1199]<=mec1a10[0];ec1a3c3[1178]<=dz714d6;ec1a3c3[1173]<=yk67978;ec1a3c3[1169]<=wje2ace;ec1a3c3[1163]<=kd75300[0];ec1a3c3[1143]<=ym15e9e;ec1a3c3[1139]<=vvd768e[0];ec1a3c3[1132]<=co21256;ec1a3c3[1116]<=qv85f5b;ec1a3c3[1113]<=wy805;ec1a3c3[1101]<=xy14c1b[0];ec1a3c3[1033]<=ea68cbf;ec1a3c3[1023]<=ce;ec1a3c3[1002]<=nre6142;ec1a3c3[999]<=gbf7616;ec1a3c3[990]<=vxb0d29;ec1a3c3[979]<=ne7cf44[0];ec1a3c3[973]<=fn7efd5;ec1a3c3[953]<=uvd3c35;ec1a3c3[947]<=jeb7185[0];ec1a3c3[946]<=sja1b5d[0];ec1a3c3[925]<=ec1fa17[0];ec1a3c3[919]<=yk59125[0];ec1a3c3[915]<=ri35b8a;ec1a3c3[910]<=pseb0af;ec1a3c3[909]<=sufa109;ec1a3c3[891]<=jraf5b0[0];ec1a3c3[886]<=the32fa[0];ec1a3c3[882]<=osfa267[0];ec1a3c3[866]<=nr4ac70;ec1a3c3[850]<=ri933a6;ec1a3c3[832]<=rvb5168;ec1a3c3[824]<=bl45e1f[0];ec1a3c3[823]<=uv415ee[0];ec1a3c3[805]<=zzb59e5[0];ec1a3c3[804]<=lq63f15;ec1a3c3[791]<=pu8617d;ec1a3c3[762]<=ukb3985[0];ec1a3c3[761]<=xyb3f7[0];ec1a3c3[739]<=xweb758;ec1a3c3[718]<=pf4a645[0];ec1a3c3[702]<=ie1030b[0];ec1a3c3[662]<=xj74c90;ec1a3c3[649]<=ri3ac14[0];ec1a3c3[622]<=anbe9af[0];ec1a3c3[618]<=jcd04d2[0];ec1a3c3[616]<=yz9ada8;ec1a3c3[612]<=qva4b1f;ec1a3c3[601]<=oh90e38[0];ec1a3c3[599]<=hq2f068[0];ec1a3c3[581]<=os59d4c;ec1a3c3[556]<=kd60100[0];ec1a3c3[550]<=ls14530[0];ec1a3c3[516]<=rv2d197[0];ec1a3c3[486]<=uv6fdfa;ec1a3c3[476]<=ip7a786;ec1a3c3[473]<=je2a86d[0];ec1a3c3[462]<=dout_enable;ec1a3c3[454]<=icff421;ec1a3c3[445]<=pfc2bd6[0];ec1a3c3[443]<=rvaf8cb[0];ec1a3c3[441]<=alf7e89;ec1a3c3[433]<=ea4958e;ec1a3c3[425]<=bld2674[0];ec1a3c3[416]<=cob6a2d;ec1a3c3[402]<=ir2c7e2;ec1a3c3[381]<=yk46ce6[0];ec1a3c3[369]<=ww7d6eb;ec1a3c3[359]<=co5299[0];ec1a3c3[356]<=fp38e21;ec1a3c3[351]<=yzd081[0];ec1a3c3[311]<=kf9afa6[0];ec1a3c3[309]<=ri1b413[0];ec1a3c3[308]<=yz8a6b6;ec1a3c3[299]<=gd3cbc1;ec1a3c3[290]<=wlab3a9[0];ec1a3c3[278]<=aaa9804;ec1a3c3[238]<=vxaf4f0;ec1a3c3[231]<=ph8ed50[0];ec1a3c3[216]<=nt92b1;ec1a3c3[184]<=do2fadd;ec1a3c3[179]<=tw2014a[0];ec1a3c3[155]<=wje26be[0];ec1a3c3[154]<=tw306d0[0];ec1a3c3[77]<=rt5f89a;ec1a3c3[38]<=lsbf13[0];ec1a3c3[19]<=wwc1c7c[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module bld78ec_Scaler (
               rstn,
               clk,
               ce,
               sr,
               dvalid_in,
               din,
               yzbb3a0
            );
parameter   fa66a78      = 8;
parameter   qv1d9c7        = 4;
parameter   shc3438  = 3;
parameter   YCBCR422    = "FALSE";
parameter   YCBCR444    = "FALSE";
parameter   uk87d73     = "TRUE";
parameter   EDGE_TH     = 8;
localparam  DTYPE       = "UNSIGNED";
localparam  DWIDTH      = fa66a78*shc3438;
localparam  qvbb4bc    = DWIDTH*qv1d9c7;
localparam  go53557        = 1'b1;
localparam  gd9aab8       = 1'b0;
localparam  ose55c9    = (YCBCR422=="TRUE" || YCBCR444=="TRUE") ? 2*EDGE_TH : 6*EDGE_TH;
localparam  ay49684         = (qv1d9c7-4)/2;
localparam  hb5a105      = (YCBCR444=="FALSE" && shc3438==3) ? (3+fa66a78) : (1+fa66a78);
localparam  ie2e591     = (YCBCR444=="FALSE" && shc3438==3) ? 3 : 2;
input                   rstn;
input                   clk;
input                   ce;
input                   sr;
input                   dvalid_in;
input [qvbb4bc-1:0]    din;
output                  yzbb3a0;
reg                     tw8cbd4;
reg                     tw35f2c;
wire                    bnaf963;
wire                    ho7cb1f;
reg                     kqe58fb;
wire                    yzbb3a0;
wire  [hb5a105  :0]      sw1f62b;
wire  [DWIDTH-1:0]      rtd8ac3[qv1d9c7-1:0];
wire  [fa66a78-1:0]      ps58790[qv1d9c7-1:0];
wire  [fa66a78-1:0]      off20e2[qv1d9c7-1:0];
wire  [fa66a78-1:0]      rv1c56a[qv1d9c7-1:0];
wire  [fa66a78  :0]      puad5e8[1:0];
reg   [hb5a105-1:0]      xw57a1d[3:0];
reg   [hb5a105  :0]      uve875a;
wire  [hb5a105  :0]      sj1d6a8;
genvar gd90206,tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg icff004;
reg [qvbb4bc - 1 : 0] lq5df83;
reg vv7e0d1;
reg czd66ab;
reg ymb355c;
reg oh9aae1;
reg zkd570d;
reg [hb5a105 : 0] ui5c35d;
reg [hb5a105 : 0] epd74a;
reg [hb5a105 : 0] zk5d2a7;
reg [2047:0] ec1a3c3;
wire [11:0] sud1e18;
localparam yz8f0c0 = 12,su78605 = 32'hfdffc70b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
assign sw1f62b =  ose55c9;
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      tw8cbd4 <= 1'b0;      tw35f2c<= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         tw8cbd4 <= 1'b0;         tw35f2c<= 1'b0;      end else begin         tw8cbd4 <= icff004;         tw35f2c<= vv7e0d1;      end   end
end
generate
begin   for (gd90206=0;gd90206<qv1d9c7;gd90206=gd90206+1) begin:fc99412      assign rtd8ac3[gd90206] = lq5df83[DWIDTH*(gd90206+1)-1:DWIDTH*gd90206];      if(shc3438==2) begin         assign ps58790[gd90206] = rtd8ac3[gd90206][2*fa66a78-1:fa66a78];      end else if(shc3438==3) begin         assign ps58790[gd90206] = rtd8ac3[gd90206][3*fa66a78-1:2*fa66a78];         assign off20e2[gd90206] = rtd8ac3[gd90206][2*fa66a78-1:  fa66a78];         assign rv1c56a[gd90206] = rtd8ac3[gd90206][  fa66a78-1:       0];      end   end   if(YCBCR444=="FALSE" && shc3438==3) begin       always @(posedge clk or negedge rstn) begin         if(!rstn) begin            xw57a1d[0] <= {hb5a105{1'b0}};            xw57a1d[1] <= {hb5a105{1'b0}};            xw57a1d[2] <= {hb5a105{1'b0}};            xw57a1d[3] <= {hb5a105{1'b0}};            uve875a    <= {(hb5a105+1){1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               xw57a1d[0] <= {hb5a105{1'b0}};               xw57a1d[1] <= {hb5a105{1'b0}};               xw57a1d[2] <= {hb5a105{1'b0}};               xw57a1d[3] <= {hb5a105{1'b0}};               uve875a    <= {(hb5a105+1){1'b0}};            end else begin               if(icff004) begin                  xw57a1d[0] <= ps58790[       ay49684] + off20e2[       ay49684] + rv1c56a[       ay49684];                  xw57a1d[1] <= ps58790[     1+ay49684] + off20e2[     1+ay49684] + rv1c56a[     1+ay49684];                  xw57a1d[2] <= ps58790[qv1d9c7-1-ay49684] + off20e2[qv1d9c7-1-ay49684] + rv1c56a[qv1d9c7-1-ay49684];                  xw57a1d[3] <= ps58790[qv1d9c7-2-ay49684] + off20e2[qv1d9c7-2-ay49684] + rv1c56a[qv1d9c7-2-ay49684];               end               if(vv7e0d1) begin                  uve875a    <= ({1'b0,xw57a1d[2]} + {1'b0,xw57a1d[3]}) - ({1'b0,xw57a1d[0]} + {1'b0,xw57a1d[1]});               end            end         end      end      assign sj1d6a8 = (epd74a[hb5a105]) ? (~epd74a + 1'b1) : epd74a;      assign bnaf963 = czd66ab;   end else begin      assign puad5e8[0] = ps58790[       ay49684] + ps58790[     1+ay49684];      assign puad5e8[1] = ps58790[qv1d9c7-1-ay49684] + ps58790[qv1d9c7-2-ay49684];      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            uve875a <= {(hb5a105+1){1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               uve875a <= {(hb5a105+1){1'b0}};            end else if(icff004) begin               uve875a <= puad5e8[1] - puad5e8[0];            end         end      end      assign sj1d6a8 = (epd74a[hb5a105]) ? (~epd74a + 1'b1) : epd74a;      assign bnaf963 = vv7e0d1;   end
end
endgenerate
assign ho7cb1f = (zk5d2a7 > ui5c35d) ? 1'b1 : 1'b0;
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kqe58fb <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         kqe58fb <= 1'b0;      end else if(ymb355c) begin         kqe58fb <= oh9aae1;      end   end
end
assign yzbb3a0 = (uk87d73=="TRUE") ? zkd570d : oh9aae1;
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];icff004<=sud1e18[2];lq5df83<={din>>1,sud1e18[3]};vv7e0d1<=sud1e18[4];czd66ab<=sud1e18[5];ymb355c<=sud1e18[6];oh9aae1<=sud1e18[7];zkd570d<=sud1e18[8];ui5c35d<={sw1f62b>>1,sud1e18[9]};epd74a<={uve875a>>1,sud1e18[10]};zk5d2a7<={sj1d6a8>>1,sud1e18[11]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=dvalid_in;ec1a3c3[2044]<=din[0];ec1a3c3[2040]<=tw8cbd4;ec1a3c3[2032]<=tw35f2c;ec1a3c3[2016]<=bnaf963;ec1a3c3[1985]<=ho7cb1f;ec1a3c3[1922]<=kqe58fb;ec1a3c3[1797]<=sw1f62b[0];ec1a3c3[1547]<=uve875a[0];ec1a3c3[1047]<=sj1d6a8[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module lq52079_Scaler(
               clk,
               rstn,
               ce,
               sr,
               xwcabca,
               jp55e52,
               fpaf296,
               jc794b6,
               xwca5b2,
               lq52d93
            );
parameter   DWIDTH = 10;
parameter   oub64db   = "SIGNED";
localparam  ie2e591 = 2;
input                    clk;
input                    rstn;
input                    ce;
input                    sr;
input                    xwcabca;
input [DWIDTH-1:0]       jp55e52;
input [DWIDTH-1:0]       fpaf296;
input [DWIDTH-1:0]       jc794b6;
output                   xwca5b2;
output       [2:0]       lq52d93;
wire  [DWIDTH  :0]       rge4ced;
wire  [DWIDTH  :0]       cb33b54;
wire  [DWIDTH  :0]       wjed520;
wire         [2:0]       uv6a905;
reg   [DWIDTH  :0]       qva416c;
reg   [DWIDTH  :0]       mg5b2a;
reg   [DWIDTH  :0]       ne6ca8e;
reg                      wj65472;
reg                      pu2a395;
reg                      mr51caa;
reg          [2:0]       db8e554;
reg          [2:0]       lq52d93;
reg                      wl95538;
reg                      xwca5b2;
reg ofe284f;
reg do1427d;
reg tj38be2;
reg [DWIDTH - 1 : 0] do2f8bb;
reg [DWIDTH - 1 : 0] gbe2eda;
reg [DWIDTH - 1 : 0] yzbb6ac;
reg [DWIDTH : 0] lqdab28;
reg [DWIDTH : 0] qiaca1a;
reg [DWIDTH : 0] bn28685;
reg [2 : 0] go4342f;
reg [DWIDTH : 0] ned0bc8;
reg [DWIDTH : 0] hq2f215;
reg [DWIDTH : 0] xjc8552;
reg ho42a96;
reg ec154b2;
reg vxaa591;
reg [2 : 0] ho52c8e;
reg ri96473;
reg [2047:0] ec1a3c3;
wire [17:0] sud1e18;
localparam yz8f0c0 = 18,su78605 = 32'hfdffe0cb;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
generate   if(oub64db=="SIGNED") begin      assign rge4ced = {do2f8bb[DWIDTH-1],do2f8bb} - {gbe2eda[DWIDTH-1],gbe2eda};      assign cb33b54 = {yzbb6ac[DWIDTH-1],yzbb6ac} - {gbe2eda[DWIDTH-1],gbe2eda};      assign wjed520 = {do2f8bb[DWIDTH-1],do2f8bb} - {yzbb6ac[DWIDTH-1],yzbb6ac};   end else begin      assign rge4ced = {1'b0,do2f8bb} - {1'b0,gbe2eda};      assign cb33b54 = {1'b0,yzbb6ac} - {1'b0,gbe2eda};      assign wjed520 = {1'b0,do2f8bb} - {1'b0,yzbb6ac};   end
endgenerate
assign uv6a905  = {lqdab28[DWIDTH],qiaca1a[DWIDTH],bn28685[DWIDTH]};
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0) begin      qva416c <= {(DWIDTH+1){1'b0}};      mg5b2a <= {(DWIDTH+1){1'b0}};      ne6ca8e <= {(DWIDTH+1){1'b0}};   end else if (ofe284f == 1'b1) begin      if (do1427d == 1'b1) begin         qva416c <= {(DWIDTH+1){1'b0}};         mg5b2a <= {(DWIDTH+1){1'b0}};         ne6ca8e <= {(DWIDTH+1){1'b0}};      end else if(tj38be2) begin         qva416c <= lqdab28[DWIDTH] ? ( ~lqdab28 + 1'b1) : lqdab28;         mg5b2a <= qiaca1a[DWIDTH] ? ( ~qiaca1a + 1'b1) : qiaca1a;         ne6ca8e <= bn28685[DWIDTH] ? ( ~bn28685 + 1'b1) : bn28685;      end   end
end
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0) begin      wj65472 <= 1'b0;      pu2a395 <= 1'b0;      mr51caa <= 1'b0;   end else if (ofe284f == 1'b1) begin      if (do1427d == 1'b1)  begin         wj65472 <= 1'b0;         pu2a395 <= 1'b0;         mr51caa <= 1'b0;      end else if(tj38be2) begin         wj65472 <= go4342f==3'b000 || go4342f==3'b111;          pu2a395 <= go4342f==3'b001 || go4342f==3'b110;          mr51caa <= go4342f==3'b010 || go4342f==3'b101;       end   end
end
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0) begin      lq52d93[0] <= 1'b0;      lq52d93[1] <= 1'b0;      lq52d93[2] <= 1'b0;   end else if (ofe284f == 1'b1) begin      if (do1427d == 1'b1) begin         lq52d93[0] <= 1'b0;         lq52d93[1] <= 1'b0;         lq52d93[2] <= 1'b0;      end else begin         lq52d93[0] <= ec154b2 || (vxaa591 && (ned0bc8 <= {2'b00,xjc8552[DWIDTH:2]}));          lq52d93[2] <= ho42a96 || (vxaa591 && (hq2f215 <= {2'b00,xjc8552[DWIDTH:2]})) ;         lq52d93[1] <= vxaa591 &&  (ned0bc8 > {2'b00,xjc8552[DWIDTH:2]}) && (hq2f215 > {2'b00,xjc8552[DWIDTH:2]});       end   end
end
always @(posedge clk or negedge rstn)
begin   if (rstn == 1'b0) begin      wl95538 <= 1'b0;      xwca5b2  <= 1'b0;   end else if (ofe284f == 1'b1) begin      if (do1427d == 1'b1) begin         wl95538 <= 1'b0;         xwca5b2  <= 1'b0;      end else begin         wl95538 <= tj38be2;         xwca5b2  <= ri96473;      end   end
end
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];tj38be2<=sud1e18[2];do2f8bb<={jp55e52>>1,sud1e18[3]};gbe2eda<={fpaf296>>1,sud1e18[4]};yzbb6ac<={jc794b6>>1,sud1e18[5]};lqdab28<={rge4ced>>1,sud1e18[6]};qiaca1a<={cb33b54>>1,sud1e18[7]};bn28685<={wjed520>>1,sud1e18[8]};go4342f<={uv6a905>>1,sud1e18[9]};ned0bc8<={qva416c>>1,sud1e18[10]};hq2f215<={mg5b2a>>1,sud1e18[11]};xjc8552<={ne6ca8e>>1,sud1e18[12]};ho42a96<=sud1e18[13];ec154b2<=sud1e18[14];vxaa591<=sud1e18[15];ho52c8e<={db8e554>>1,sud1e18[16]};ri96473<=sud1e18[17];end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=xwcabca;ec1a3c3[2044]<=jp55e52[0];ec1a3c3[2040]<=fpaf296[0];ec1a3c3[2033]<=jc794b6[0];ec1a3c3[2018]<=rge4ced[0];ec1a3c3[1988]<=cb33b54[0];ec1a3c3[1929]<=wjed520[0];ec1a3c3[1811]<=uv6a905[0];ec1a3c3[1574]<=qva416c[0];ec1a3c3[1247]<=mr51caa;ec1a3c3[1101]<=mg5b2a[0];ec1a3c3[1023]<=ce;ec1a3c3[894]<=wl95538;ec1a3c3[623]<=pu2a395;ec1a3c3[447]<=db8e554[0];ec1a3c3[311]<=wj65472;ec1a3c3[155]<=ne6ca8e[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module blf6c5b_Scaler (
                 rstn,
                 clk,
                 ce,
                 sr,
                 din,
                 tuf19e8,
                 zm8cf43,
                 ay67a1b,
                 xl3d0d9,
                 dvalid_in,
                 pu1bac0,
                 fa580fa,
                 dvalid_out,
                 fac07d3,
                 dout
               );
parameter   fa66a78     = 18;
parameter   vv4a821     = 18;
parameter   ned55c5     = 41;
parameter   dba0875      = 4;
parameter   pu43ae    = 1;
parameter   qi21d72      = "SIGNED";
parameter   pueb90      = "SIGNED";
parameter   wj75c82   = 4;
parameter   FAMILY     = "ECP2";
localparam  DWIDTH     = (qi21d72=="UNSIGNED"&&pueb90=="SIGNED"&&FAMILY=="ECP") ? (fa66a78+1) : fa66a78;
localparam  CWIDTH     = (qi21d72=="SIGNED"&&pueb90=="UNSIGNED"&&FAMILY=="ECP") ? (vv4a821+1) : vv4a821;
localparam  DTYPE      = (qi21d72=="UNSIGNED"&&pueb90=="SIGNED"&&FAMILY=="ECP") ? "SIGNED" : qi21d72;
localparam  CTYPE      = (qi21d72=="SIGNED"&&pueb90=="UNSIGNED"&&FAMILY=="ECP") ? "SIGNED" : pueb90;
localparam  jc6c0f4     = (dba0875==1) ? 1 : ntc03e(dba0875-1);
localparam  lqf4773    = DWIDTH+CWIDTH+2;
localparam  zkee68c    = DWIDTH+CWIDTH+jc6c0f4;
localparam  jrb559d  = (((qi21d72=="UNSIGNED"&&pueb90=="SIGNED")||(qi21d72=="SIGNED"&&pueb90=="UNSIGNED")) && FAMILY=="ECP") ? (ned55c5+1) : ned55c5;
localparam  oh39129     = 4;
localparam  end9a09     = ((DWIDTH <= 18 && CWIDTH <= 18) ?                         ((wj75c82 > 1) ? 5 : 4) :                         ((wj75c82 > 1) ? 6 : 5));
localparam  ic4cc67     = ((DWIDTH <= 18 && CWIDTH <= 18) ?                         ((wj75c82 > 1) ? 5 : 4) :                         ((wj75c82 > 1) ? 7 : 6));
localparam  yz39458     = ((DWIDTH <= 18 && CWIDTH <= 18) ?                         ((wj75c82 > 1) ? jc6c0f4+3 : jc6c0f4+2) :                         ((wj75c82 > 1) ? jc6c0f4+5 : jc6c0f4+4));
localparam  en7a160     = ((dba0875==1) ? oh39129 :                         ((dba0875==2) ? end9a09 :                         ((dba0875==3) ? ic4cc67 :                         ((dba0875==4) ? ic4cc67 : yz39458))));
input                         rstn;
input                         clk;
input                         ce;
input                         sr;
input [(fa66a78*dba0875)-1:0]    din;
input [(vv4a821*dba0875)-1:0]    tuf19e8;
input                         zm8cf43;
input                         ay67a1b;
input                         xl3d0d9;
input                         dvalid_in;
input [pu43ae-1:0]           pu1bac0;
output                        fa580fa;
output                        dvalid_out;
output[pu43ae-1:0]           fac07d3;
output[ned55c5-1:0]            dout;
wire tuc57f2;
wire wy2bf92;
reg [en7a160-1:0]           tw8cbd4           ;
reg [en7a160-1:0]           ym923dd             ;
reg [en7a160-1:0]           wl8f746           ;
reg [en7a160-1:0]           ng2f51c          ;
reg [pu43ae-1:0]          cm46bbc[en7a160-1:0] ;
wire[DWIDTH-1:0]           rtd8ac3[dba0875+3:0];
wire[CWIDTH-1:0]           ph3a01[dba0875+3:0];
reg [jrb559d-1:0]        xj403ad            ;
wire[jrb559d-1:0]        doeb73;
wire[DWIDTH+CWIDTH+16-1:0] rt6e6aa;
reg [DWIDTH+CWIDTH+16-1:0] jcd559d;
wire[zkee68c-1:0]          su5675f;
wire[zkee68c-1:0]          sw9d7c0;
reg [zkee68c-1:0]          pf5f00b                      ;
wire[DWIDTH+CWIDTH-1:0]    vk17a2  [dba0875-1:0];
reg [DWIDTH+CWIDTH-1:0]    zma24aa [dba0875:0]               ;
wire[DWIDTH+CWIDTH+1:0]    ntaa50d [(dba0875+3)/4  :0];
wire[DWIDTH+CWIDTH+1:0]    mtdcfc[(dba0875+3)/4  :0];
reg [DWIDTH+CWIDTH+1:0]    nrfcb95[(dba0875+3)/4-1:0]       ;
reg [DWIDTH+CWIDTH:0]      sj95e00                          ;
wire[zkee68c-1:0]          me78026   [(dba0875+3)/4-1:0];
reg [DWIDTH+CWIDTH:0]      ir2608b [(dba0875+1)/2:0]         ;
reg [DWIDTH+CWIDTH+1:0]    hd8b88b [((dba0875+1)/2+1)/2-1:0] ;
wire[zkee68c-1:0]          xy1178c    [jc6c0f4-2:0][(1<<(jc6c0f4-2))-1:0];
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [(fa66a78 * dba0875) - 1 : 0] lq5df83;
reg [(vv4a821 * dba0875) - 1 : 0] xwda026;
reg psd0132;
reg ep80993;
reg ls4c9d;
reg icff004;
reg [pu43ae - 1 : 0] me7d77e;
reg gq9d73b;
reg neeb9d9;
reg [en7a160 - 1 : 0] vv7e0d1;
reg [en7a160 - 1 : 0] ipd9621;
reg [en7a160 - 1 : 0] zk58869;
reg [en7a160 - 1 : 0] ng83478;
reg [jrb559d - 1 : 0] ne69404;
reg [jrb559d - 1 : 0] th5011f;
reg [DWIDTH + CWIDTH + 16 - 1 : 0] gd23fea;
reg [DWIDTH + CWIDTH + 16 - 1 : 0] mrfd548;
reg [zkee68c - 1 : 0] fn55221;
reg [zkee68c - 1 : 0] zk48879;
reg [zkee68c - 1 : 0] qi21e5c;
reg [DWIDTH + CWIDTH : 0] iccb80a;
reg [2047:0] ec1a3c3;
wire [22:0] sud1e18;
localparam yz8f0c0 = 23,su78605 = 32'hfdffd48b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
generate   always @(posedge clk or negedge rstn)   begin      if (!rstn) begin         tw8cbd4  <= {en7a160{1'b0}};         ym923dd    <= {en7a160{1'b0}};         wl8f746  <= {en7a160{1'b0}};         ng2f51c <= {en7a160{1'b0}};      end else if(ofe284f) begin         if (do1427d) begin            tw8cbd4  <= {en7a160{1'b0}};            ym923dd    <= {en7a160{1'b0}};            wl8f746  <= {en7a160{1'b0}};            ng2f51c <= {en7a160{1'b0}};         end else begin            tw8cbd4  <= { vv7e0d1[en7a160-2:0], icff004};            ym923dd    <= {   ipd9621[en7a160-2:0],   psd0132};            wl8f746  <= { zk58869[en7a160-2:0], ep80993};            ng2f51c <= {ng83478[en7a160-2:0],ls4c9d};         end      end   end   for (tj1c509=0;tj1c509<en7a160;tj1c509=tj1c509+1) begin:go6784f      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            cm46bbc[tj1c509] <= {pu43ae{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               cm46bbc[tj1c509] <= {pu43ae{1'b0}};            end else begin               cm46bbc[tj1c509] <= (tj1c509==0) ? me7d77e : cm46bbc[tj1c509-1];            end         end      end   end
endgenerate
assign dvalid_out  = zk58869 [en7a160-1];
assign fa580fa = ng83478[en7a160-1];
assign fac07d3    = cm46bbc   [en7a160-1];
generate   if(dba0875 == 1) begin      if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin         assign dout = {mrfd548[DWIDTH+CWIDTH+15],mrfd548[ned55c5-2:0]};      end else begin         assign dout = mrfd548[ned55c5-1:0];      end   end else begin      if (wj75c82 > 1) begin:mta4248         assign dout = ne69404[ned55c5-1:0];      end else begin         assign dout = fn55221[ned55c5-1:0];      end   end
endgenerate
generate
begin :uv4e0f4   if (DTYPE == "SIGNED") assign wy2bf92 = 1'b1;   else                   assign wy2bf92 = 1'b0;   if (CTYPE == "SIGNED") assign tuc57f2 = 1'b1;   else                   assign tuc57f2 = 1'b0;   for (tj1c509=0;tj1c509<dba0875+4;tj1c509=tj1c509+1) begin:zma8dc8      if(tj1c509<dba0875) begin         if(qi21d72=="UNSIGNED"&&pueb90=="SIGNED"&&FAMILY=="ECP") begin            assign rtd8ac3[tj1c509] = {1'b0,lq5df83[(tj1c509+1)*fa66a78-1:tj1c509*fa66a78]};         end else begin            assign rtd8ac3[tj1c509] = lq5df83[(tj1c509+1)*fa66a78-1:tj1c509*fa66a78];         end         if(qi21d72=="SIGNED"&&pueb90=="UNSIGNED"&&FAMILY=="ECP") begin            assign ph3a01[tj1c509] = {1'b0,xwda026[(tj1c509+1)*vv4a821-1:tj1c509*vv4a821]};         end else begin            assign ph3a01[tj1c509] = xwda026[(tj1c509+1)*vv4a821-1:tj1c509*vv4a821];         end      end else begin         assign rtd8ac3[tj1c509] = {DWIDTH{1'b0}};         assign ph3a01[tj1c509] = {CWIDTH{1'b0}};      end   end   if (dba0875==1) begin:sj8a1ce      pmi_dsp_mac #( .pmi_dataa_width           (DWIDTH        ),                     .pmi_datab_width           (CWIDTH        ),                     .pmi_additional_pipeline   (1             ),                     .pmi_input_reg             ("on"          ),                     .pmi_family                (FAMILY        ),                     .pmi_gsr                   ("enable"      ),                     .pmi_source_control_a      ("parallel"    ),                     .pmi_source_control_b      ("parallel"    ),                     .pmi_reg_inputa_clk        ("CLK0"        ),                     .pmi_reg_inputa_ce         ("CE0"         ),                     .pmi_reg_inputa_rst        ("RST0"        ),                     .pmi_reg_inputb_clk        ("CLK0"        ),                     .pmi_reg_inputb_ce         ("CE0"         ),                     .pmi_reg_inputb_rst        ("RST0"        ),                     .pmi_reg_pipeline_clk      ("CLK0"        ),                     .pmi_reg_pipeline_ce       ("CE0"         ),                     .pmi_reg_pipeline_rst      ("RST0"        ),                     .pmi_reg_output_clk        ("CLK0"        ),                     .pmi_reg_output_ce         ("CE3"         ),                     .pmi_reg_output_rst        ("RST0"        ),                     .pmi_reg_signeda_0_clk     ("CLK0"        ),                     .pmi_reg_signeda_0_ce      ("CE0"         ),                     .pmi_reg_signeda_0_rst     ("RST0"        ),                     .pmi_reg_signeda_1_clk     ("CLK0"        ),                     .pmi_reg_signeda_1_ce      ("CE0"         ),                     .pmi_reg_signeda_1_rst     ("RST0"        ),                     .pmi_reg_signedb_0_clk     ("CLK0"        ),                     .pmi_reg_signedb_0_ce      ("CE0"         ),                     .pmi_reg_signedb_0_rst     ("RST0"        ),                     .pmi_reg_signedb_1_clk     ("CLK0"        ),                     .pmi_reg_signedb_1_ce      ("CE0"         ),                     .pmi_reg_signedb_1_rst     ("RST0"        ),                     .pmi_reg_addnsub_0_clk     ("CLK0"        ),                     .pmi_reg_addnsub_0_ce      ("CE0"         ),                     .pmi_reg_addnsub_0_rst     ("RST0"        ),                     .pmi_reg_addnsub_1_clk     ("CLK0"        ),                     .pmi_reg_addnsub_1_ce      ("CE0"         ),                     .pmi_reg_addnsub_1_rst     ("RST0"        ),                     .pmi_reg_accumsload_0_clk  ("CLK0"        ),                     .pmi_reg_accumsload_0_ce   ("CE0"         ),                     .pmi_reg_accumsload_0_rst  ("RST0"        ),                     .pmi_reg_accumsload_1_clk  ("CLK0"        ),                     .pmi_reg_accumsload_1_ce   ("CE0"         ),                     .pmi_reg_accumsload_1_rst  ("RST0"        ),                     .module_type               ("pmi_dsp_mac" ))            cmceb8d (  .A                (rtd8ac3[0]       ),                     .B                (ph3a01[0]       ),                     .SRIA             ({18{1'b0}}    ),                     .SRIB             ({18{1'b0}}    ),                     .CLK0             (clk           ),                     .CLK1             (clk           ),                     .CLK2             (clk           ),                     .CLK3             (clk           ),                     .CE0              (ce            ),                     .CE1              (ce            ),                     .CE2              (ce            ),                     .CE3              (tw8cbd4[1]&&ce),                     .RST0             (~rstn         ),                     .RST1             (~rstn         ),                     .RST2             (~rstn         ),                     .RST3             (~rstn         ),                     .SignA            (wy2bf92         ),                     .SignB            (tuc57f2         ),                     .SourceA          (1'b0          ),                     .SourceB          (1'b0          ),                     .ADDNSUB          (1'b1          ),                     .ACCUMSLOAD       (zm8cf43&dvalid_in),                     .LD               ({(DWIDTH+CWIDTH+16){1'b0}}),                     .SROA             (              ),                     .SROB             (              ),                     .ACCUM            (rt6e6aa        ),                     .OVERFLOW         (              ));      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            jcd559d <= {(DWIDTH+CWIDTH+16){1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               jcd559d <= {(DWIDTH+CWIDTH+16){1'b0}};            end else begin               jcd559d <= gd23fea;            end         end      end   end else if (dba0875==2) begin:mg104fa      if (DWIDTH <= 18 && CWIDTH <= 18) begin :oh9f44f         pmi_dsp_multaddsub #(.pmi_dataa_width           (DWIDTH              ),                              .pmi_datab_width           (CWIDTH              ),                              .pmi_additional_pipeline   (1                   ),                              .pmi_input_reg             ("on"                ),                              .pmi_output_reg            ("on"                ),                              .pmi_family                (FAMILY              ),                              .pmi_gsr                   ("enable"            ),                              .pmi_source_control_a0     ("parallel"          ),                              .pmi_source_control_a1     ("parallel"          ),                              .pmi_source_control_b0     ("parallel"          ),                              .pmi_source_control_b1     ("parallel"          ),                              .pmi_reg_inputa0_clk       ("CLK0"              ),                              .pmi_reg_inputa0_ce        ("CE0"               ),                              .pmi_reg_inputa0_rst       ("RST0"              ),                              .pmi_reg_inputa1_clk       ("CLK0"              ),                              .pmi_reg_inputa1_ce        ("CE0"               ),                              .pmi_reg_inputa1_rst       ("RST0"              ),                              .pmi_reg_inputb0_clk       ("CLK0"              ),                              .pmi_reg_inputb0_ce        ("CE0"               ),                              .pmi_reg_inputb0_rst       ("RST0"              ),                              .pmi_reg_inputb1_clk       ("CLK0"              ),                              .pmi_reg_inputb1_ce        ("CE0"               ),                              .pmi_reg_inputb1_rst       ("RST0"              ),                              .pmi_reg_pipeline0_clk     ("CLK0"              ),                              .pmi_reg_pipeline0_ce      ("CE0"               ),                              .pmi_reg_pipeline0_rst     ("RST0"              ),                              .pmi_reg_pipeline1_clk     ("CLK0"              ),                              .pmi_reg_pipeline1_ce      ("CE0"               ),
                              .pmi_reg_pipeline1_rst     ("RST0"              ),                              .pmi_reg_output_clk        ("CLK0"              ),                              .pmi_reg_output_ce         ("CE0"               ),                              .pmi_reg_output_rst        ("RST0"              ),                              .pmi_reg_signeda_0_clk     ("CLK0"              ),                              .pmi_reg_signeda_0_ce      ("CE0"               ),                              .pmi_reg_signeda_0_rst     ("RST0"              ),                              .pmi_reg_signeda_1_clk     ("CLK0"              ),                              .pmi_reg_signeda_1_ce      ("CE0"               ),                              .pmi_reg_signeda_1_rst     ("RST0"              ),                              .pmi_reg_signedb_0_clk     ("CLK0"              ),                              .pmi_reg_signedb_0_ce      ("CE0"               ),                              .pmi_reg_signedb_0_rst     ("RST0"              ),                              .pmi_reg_signedb_1_clk     ("CLK0"              ),                              .pmi_reg_signedb_1_ce      ("CE0"               ),                              .pmi_reg_signedb_1_rst     ("RST0"              ),                              .pmi_reg_addnsub_0_clk     ("CLK0"              ),                              .pmi_reg_addnsub_0_ce      ("CE0"               ),                              .pmi_reg_addnsub_0_rst     ("RST0"              ),                              .pmi_reg_addnsub_1_clk     ("CLK0"              ),                              .pmi_reg_addnsub_1_ce      ("CE0"               ),                              .pmi_reg_addnsub_1_rst     ("RST0"              ),                              .module_type               ("pmi_dsp_multaddsub"))                        bl4f84b (.A0               (rtd8ac3[0]       ),                              .A1               (rtd8ac3[1]       ),                              .B0               (ph3a01[0]       ),                              .B1               (ph3a01[1]       ),                              .SRIA             ({18{1'b0}}    ),                              .SRIB             ({18{1'b0}}    ),                              .CLK0             (clk           ),                              .CLK1             (clk           ),                              .CLK2             (clk           ),                              .CLK3             (clk           ),                              .CE0              (ce            ),                              .CE1              (ce            ),                              .CE2              (ce            ),                              .CE3              (ce            ),                              .RST0             (~rstn         ),                              .RST1             (~rstn         ),                              .RST2             (~rstn         ),                              .RST3             (~rstn         ),                              .SignA            (wy2bf92         ),                              .SignB            (tuc57f2         ),                              .ShiftA0          (1'b0          ),                              .ShiftA1          (1'b0          ),                              .ShiftB0          (1'b0          ),                              .ShiftB1          (1'b0          ),                              .SROA             (              ),                              .SROB             (              ),                              .ADDNSUB          (1'b1          ),                              .SUM              (sw9d7c0       ));         always @(posedge clk or negedge rstn)         begin            if (!rstn)               pf5f00b <= {(DWIDTH+CWIDTH+1){1'b0}};            else if(ofe284f) begin               if (do1427d)                  pf5f00b <= {(DWIDTH+CWIDTH+1){1'b0}};               else                  pf5f00b <= zk48879;            end         end         assign su5675f = qi21e5c;      end else begin :mr54c66         pmi_dsp_mult #(.pmi_dataa_width           (DWIDTH        ),                        .pmi_datab_width           (CWIDTH        ),                        .pmi_additional_pipeline   (1             ),                        .pmi_input_reg             ("on"          ),                        .pmi_output_reg            ("on"          ),                        .pmi_family                (FAMILY        ),                        .pmi_gsr                   ("enable"      ),                        .pmi_source_control_a      ("parallel"    ),                        .pmi_source_control_b      ("parallel"    ),                        .pmi_reg_inputa_clk        ("CLK0"        ),                        .pmi_reg_inputa_ce         ("CE0"         ),                        .pmi_reg_inputa_rst        ("RST0"        ),                        .pmi_reg_inputb_clk        ("CLK0"        ),                        .pmi_reg_inputb_ce         ("CE0"         ),                        .pmi_reg_inputb_rst        ("RST0"        ),                        .pmi_reg_pipeline_clk      ("CLK0"        ),                        .pmi_reg_pipeline_ce       ("CE0"         ),                        .pmi_reg_pipeline_rst      ("RST0"        ),                        .pmi_reg_output_clk        ("CLK0"        ),                        .pmi_reg_output_ce         ("CE0"         ),                        .pmi_reg_output_rst        ("RST0"        ),                        .pmi_reg_signeda_clk       ("CLK0"        ),                        .pmi_reg_signeda_ce        ("CE0"         ),                        .pmi_reg_signeda_rst       ("RST0"        ),                        .pmi_reg_signedb_clk       ("CLK0"        ),                        .pmi_reg_signedb_ce        ("CE0"         ),                        .pmi_reg_signedb_rst       ("RST0"        ),                        .module_type               ("pmi_dsp_mult"))         rg6680b(.A        (rtd8ac3[0]       ),                 .B        (ph3a01[0]       ),                 .SRIA     ({18{1'b0}}    ),                 .SRIB     ({18{1'b0}}    ),                 .CLK0     (clk           ),                 .CLK1     (clk           ),                 .CLK2     (clk           ),                 .CLK3     (clk           ),                 .CE0      (ce            ),                 .CE1      (ce            ),                 .CE2      (ce            ),                 .CE3      (ce            ),                 .RST0     (~rstn         ),                 .RST1     (~rstn         ),                 .RST2     (~rstn         ),                 .RST3     (~rstn         ),                 .SignA    (wy2bf92         ),                 .SignB    (tuc57f2         ),                 .SourceA  (1'b0          ),                 .SourceB  (1'b0          ),                 .SROA     (              ),                 .SROB     (              ),                 .P        (vk17a2[0]       ));         pmi_dsp_mult #(.pmi_dataa_width           (DWIDTH        ),                        .pmi_datab_width           (CWIDTH        ),                        .pmi_additional_pipeline   (1             ),                        .pmi_input_reg             ("on"          ),                        .pmi_output_reg            ("on"          ),                        .pmi_family                (FAMILY        ),                        .pmi_gsr                   ("enable"      ),                        .pmi_source_control_a      ("parallel"    ),                        .pmi_source_control_b      ("parallel"    ),                        .pmi_reg_inputa_clk        ("CLK0"        ),                        .pmi_reg_inputa_ce         ("CE0"         ),                        .pmi_reg_inputa_rst        ("RST0"        ),                        .pmi_reg_inputb_clk        ("CLK0"        ),                        .pmi_reg_inputb_ce         ("CE0"         ),                        .pmi_reg_inputb_rst        ("RST0"        ),                        .pmi_reg_pipeline_clk      ("CLK0"        ),                        .pmi_reg_pipeline_ce       ("CE0"         ),                        .
pmi_reg_pipeline_rst      ("RST0"        ),                        .pmi_reg_output_clk        ("CLK0"        ),                        .pmi_reg_output_ce         ("CE0"         ),                        .pmi_reg_output_rst        ("RST0"        ),                        .pmi_reg_signeda_clk       ("CLK0"        ),                        .pmi_reg_signeda_ce        ("CE0"         ),                        .pmi_reg_signeda_rst       ("RST0"        ),                        .pmi_reg_signedb_clk       ("CLK0"        ),                        .pmi_reg_signedb_ce        ("CE0"         ),                        .pmi_reg_signedb_rst       ("RST0"        ),                        .module_type               ("pmi_dsp_mult"))         uicbde4(.A        (rtd8ac3[1]       ),                 .B        (ph3a01[1]       ),                 .SRIA     ({18{1'b0}}    ),                 .SRIB     ({18{1'b0}}    ),                 .CLK0     (clk           ),                 .CLK1     (clk           ),                 .CLK2     (clk           ),                 .CLK3     (clk           ),                 .CE0      (ce            ),                 .CE1      (ce            ),                 .CE2      (ce            ),                 .CE3      (ce            ),                 .RST0     (~rstn         ),                 .RST1     (~rstn         ),                 .RST2     (~rstn         ),                 .RST3     (~rstn         ),                 .SignA    (wy2bf92         ),                 .SignB    (tuc57f2         ),                 .SourceA  (1'b0          ),                 .SourceB  (1'b0          ),                 .SROA     (              ),                 .SROB     (              ),                 .P        (vk17a2[1]       ));         for (tj1c509=0;tj1c509<2;tj1c509=tj1c509+1) begin:mt7e95            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};                  else                     zma24aa[tj1c509] <= vk17a2[tj1c509];               end            end         end         always @(posedge clk or negedge rstn)         begin            if (!rstn)               sj95e00 <= {(DWIDTH+CWIDTH+1){1'b0}};            else if(ofe284f) begin               if (do1427d)                  sj95e00 <= {(DWIDTH+CWIDTH+1){1'b0}};               else if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  sj95e00 <= {zma24aa[0][DWIDTH+CWIDTH-1],zma24aa[0]}+{zma24aa[1][DWIDTH+CWIDTH-1],zma24aa[1]};               else                  sj95e00 <= {1'b0,zma24aa[0]}+{1'b0,zma24aa[1]};            end         end         assign su5675f = iccb80a;      end   end else begin:ykcee8b      if (DWIDTH <= 18 && CWIDTH <= 18) begin :god160f         for (tj1c509=0;tj1c509<(dba0875/4);tj1c509=tj1c509+1) begin:facf64b            if(FAMILY=="ECP3" || FAMILY=="ECP5U") begin :shc96fd               pmi_dsp_multaddsub #(.pmi_dataa_width           (DWIDTH              ),                                    .pmi_datab_width           (CWIDTH              ),                                    .pmi_additional_pipeline   (1                   ),                                    .pmi_input_reg             ("on"                ),                                    .pmi_output_reg            ("on"                ),                                    .pmi_family                (FAMILY              ),                                    .pmi_gsr                   ("enable"            ),                                    .pmi_source_control_a0     ("parallel"          ),                                    .pmi_source_control_a1     ("parallel"          ),                                    .pmi_source_control_b0     ("parallel"          ),                                    .pmi_source_control_b1     ("parallel"          ),                                    .module_type               ("pmi_dsp_multaddsub"))               kdfd96b            (.A0               (rtd8ac3[tj1c509*4+0] ),                                    .A1               (rtd8ac3[tj1c509*4+1] ),                                    .B0               (ph3a01[tj1c509*4+0] ),                                    .B1               (ph3a01[tj1c509*4+1] ),                                    .SRIA             ({18{1'b0}}    ),                                    .SRIB             ({18{1'b0}}    ),                                    .CLK0             (clk           ),                                    .CLK1             (clk           ),                                    .CLK2             (clk           ),                                    .CLK3             (clk           ),                                    .CE0              (ce            ),                                    .CE1              (ce            ),                                    .CE2              (ce            ),                                    .CE3              (ce            ),                                    .RST0             (~rstn         ),                                    .RST1             (~rstn         ),                                    .RST2             (~rstn         ),                                    .RST3             (~rstn         ),                                    .SignA            (wy2bf92         ),                                    .SignB            (tuc57f2         ),                                    .ShiftA0          (1'b0          ),                                    .ShiftA1          (1'b0          ),                                    .ShiftB0          (1'b0          ),                                    .ShiftB1          (1'b0          ),                                    .SROA             (              ),                                    .SROB             (              ),                                    .ADDNSUB          (1'b1          ),                                    .SUM              (ntaa50d[tj1c509][DWIDTH+CWIDTH:0]));               pmi_dsp_multaddsub #(.pmi_dataa_width           (DWIDTH              ),                                    .pmi_datab_width           (CWIDTH              ),                                    .pmi_additional_pipeline   (1                   ),                                    .pmi_input_reg             ("on"                ),                                    .pmi_output_reg            ("on"                ),                                    .pmi_family                (FAMILY              ),                                    .pmi_gsr                   ("enable"            ),                                    .pmi_source_control_a0     ("parallel"          ),                                    .pmi_source_control_a1     ("parallel"          ),                                    .pmi_source_control_b0     ("parallel"          ),                                    .pmi_source_control_b1     ("parallel"          ),                                    .module_type               ("pmi_dsp_multaddsub"))               yxcc7b8            (.A0               (rtd8ac3[tj1c509*4+2] ),                                    .A1               (rtd8ac3[tj1c509*4+3] ),                                    .B0               (ph3a01[tj1c509*4+2] ),                                    .B1               (ph3a01[tj1c509*4+3] ),                                    .SRIA             ({18{1'b0}}    ),                                    .SRIB             ({18{1'b0}}    ),                                    .CLK0             (clk           ),                                    .CLK1             (clk           ),                                    .CLK2             (clk           ),                                    .CLK3             (clk           ),                                    .CE0              (ce            ),                                    .CE1              (ce            ),                                    .CE2              (ce            ),                                    .CE3              (ce            ),                                    .RST0             (~
rstn         ),                                    .RST1             (~rstn         ),                                    .RST2             (~rstn         ),                                    .RST3             (~rstn         ),                                    .SignA            (wy2bf92         ),                                    .SignB            (tuc57f2         ),                                    .ShiftA0          (1'b0          ),                                    .ShiftA1          (1'b0          ),                                    .ShiftB0          (1'b0          ),                                    .ShiftB1          (1'b0          ),                                    .SROA             (              ),                                    .SROB             (              ),                                    .ADDNSUB          (1'b1          ),                                    .SUM              (mtdcfc[tj1c509][DWIDTH+CWIDTH:0]));               if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin                  assign ntaa50d [tj1c509][DWIDTH+CWIDTH+1] = ntaa50d [tj1c509][DWIDTH+CWIDTH];                  assign mtdcfc[tj1c509][DWIDTH+CWIDTH+1] = mtdcfc[tj1c509][DWIDTH+CWIDTH];               end else begin                  assign ntaa50d [tj1c509][DWIDTH+CWIDTH+1] = 1'b0;                  assign mtdcfc[tj1c509][DWIDTH+CWIDTH+1] = 1'b0;               end            end else begin :ria2b69               pmi_dsp_multaddsubsum #(.pmi_dataa_width           (DWIDTH                 ),                                       .pmi_datab_width           (CWIDTH                 ),                                       .pmi_additional_pipeline   (1                      ),                                       .pmi_input_reg             ("on"                   ),                                       .pmi_output_reg            ("on"                   ),                                       .pmi_family                (FAMILY                 ),                                       .pmi_gsr                   ("enable"               ),                                       .module_type               ("pmi_dsp_multaddsubsum"))                           ho69611 ( .A0            (rtd8ac3[tj1c509*4+0]     ),                                       .A1            (rtd8ac3[tj1c509*4+1]     ),                                       .A2            (rtd8ac3[tj1c509*4+2]     ),                                       .A3            (rtd8ac3[tj1c509*4+3]     ),                                       .B0            (ph3a01[tj1c509*4+0]     ),                                       .B1            (ph3a01[tj1c509*4+1]     ),                                       .B2            (ph3a01[tj1c509*4+2]     ),                                       .B3            (ph3a01[tj1c509*4+3]     ),                                       .SRIA          ({18{1'b0}}       ),                                       .SRIB          ({18{1'b0}}       ),                                       .CLK0          (clk              ),                                       .CLK1          (clk              ),                                       .CLK2          (clk              ),                                       .CLK3          (clk              ),                                       .CE0           (ce               ),                                       .CE1           (ce               ),                                       .CE2           (ce               ),                                       .CE3           (ce               ),                                       .RST0          (~rstn            ),                                       .RST1          (~rstn            ),                                       .RST2          (~rstn            ),                                       .RST3          (~rstn            ),                                       .SignA         (wy2bf92            ),                                       .SignB         (tuc57f2            ),                                       .ShiftA0       (1'b0             ),                                       .ShiftA1       (1'b0             ),                                       .ShiftA2       (1'b0             ),                                       .ShiftA3       (1'b0             ),                                       .ShiftB0       (1'b0             ),                                       .ShiftB1       (1'b0             ),                                       .ShiftB2       (1'b0             ),                                       .ShiftB3       (1'b0             ),                                       .ADDNSUB1      (1'b1             ),                                       .ADDNSUB3      (1'b1             ),                                       .SUM           (ntaa50d[tj1c509]        ),                                       .SROA          (                 ),                                       .SROB          (                 ));            end         end         if (dba0875%4 == 3) begin :lqe4e1d            pmi_dsp_multaddsub #(.pmi_dataa_width           (DWIDTH              ),                                 .pmi_datab_width           (CWIDTH              ),                                 .pmi_additional_pipeline   (1                   ),                                 .pmi_input_reg             ("on"                ),                                 .pmi_output_reg            ("on"                ),                                 .pmi_family                (FAMILY              ),                                 .pmi_gsr                   ("enable"            ),                                 .pmi_source_control_a0     ("parallel"          ),                                 .pmi_source_control_a1     ("parallel"          ),                                 .pmi_source_control_b0     ("parallel"          ),                                 .pmi_source_control_b1     ("parallel"          ),                                 .module_type               ("pmi_dsp_multaddsub"))                          ep1d5b4(.A0               (rtd8ac3[dba0875-3] ),                                 .A1               (rtd8ac3[dba0875-2] ),                                 .B0               (ph3a01[dba0875-3] ),                                 .B1               (ph3a01[dba0875-2] ),                                 .SRIA             ({18{1'b0}}    ),                                 .SRIB             ({18{1'b0}}    ),                                 .CLK0             (clk           ),                                 .CLK1             (clk           ),                                 .CLK2             (clk           ),                                 .CLK3             (clk           ),                                 .CE0              (ce            ),                                 .CE1              (ce            ),                                 .CE2              (ce            ),                                 .CE3              (ce            ),                                 .RST0             (~rstn         ),                                 .RST1             (~rstn         ),                                 .RST2             (~rstn         ),                                 .RST3             (~rstn         ),                                 .SignA            (wy2bf92         ),                                 .SignB            (tuc57f2         ),                                 .ShiftA0          (1'b0          ),                                 .ShiftA1          (1'b0          ),                                 .ShiftB0          (1'b0          ),                                 .ShiftB1          (1'b0          ),                                 .SROA             (              ),                                 .SROB             (              ),                                 .ADDNSUB          (1'b1          ),                                 .SUM              (ntaa50d[dba0875/4][DWIDTH+CWIDTH:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH];            end else begin               assign ntaa50d[
dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;            end            pmi_dsp_mult #(.pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_gsr                   ("enable"      ),                           .pmi_source_control_a      ("parallel"    ),                           .pmi_source_control_b      ("parallel"    ),                           .module_type               ("pmi_dsp_mult"))            rg6680b(.A        (rtd8ac3[dba0875-1] ),                    .B        (ph3a01[dba0875-1] ),                    .SRIA     ({18{1'b0}}    ),                    .SRIB     ({18{1'b0}}    ),                    .CLK0     (clk           ),                    .CLK1     (clk           ),                    .CLK2     (clk           ),                    .CLK3     (clk           ),                    .CE0      (ce            ),                    .CE1      (ce            ),                    .CE2      (ce            ),                    .CE3      (ce            ),                    .RST0     (~rstn         ),                    .RST1     (~rstn         ),                    .RST2     (~rstn         ),                    .RST3     (~rstn         ),                    .SignA    (wy2bf92         ),                    .SignB    (tuc57f2         ),                    .SourceA  (1'b0          ),                    .SourceB  (1'b0          ),                    .SROA     (              ),                    .SROB     (              ),                    .P        (ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH+1] = ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1];               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH  ] = ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1];            end else begin               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH+1] = 1'b0;               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH  ] = 1'b0;            end         end else if (dba0875%4 == 2) begin :lq7304b            pmi_dsp_multaddsub #(.pmi_dataa_width           (DWIDTH              ),                                 .pmi_datab_width           (CWIDTH              ),                                 .pmi_additional_pipeline   (1                   ),                                 .pmi_input_reg             ("on"                ),                                 .pmi_output_reg            ("on"                ),                                 .pmi_family                (FAMILY              ),                                 .pmi_gsr                   ("enable"            ),                                 .pmi_source_control_a0     ("parallel"          ),                                 .pmi_source_control_a1     ("parallel"          ),                                 .pmi_source_control_b0     ("parallel"          ),                                 .pmi_source_control_b1     ("parallel"          ),                                 .module_type               ("pmi_dsp_multaddsub"))                          ep1d5b4(.A0               (rtd8ac3[dba0875-2] ),                                 .A1               (rtd8ac3[dba0875-1] ),                                 .B0               (ph3a01[dba0875-2] ),                                 .B1               (ph3a01[dba0875-1] ),                                 .SRIA             ({18{1'b0}}    ),                                 .SRIB             ({18{1'b0}}    ),                                 .CLK0             (clk           ),                                 .CLK1             (clk           ),                                 .CLK2             (clk           ),                                 .CLK3             (clk           ),                                 .CE0              (ce            ),                                 .CE1              (ce            ),                                 .CE2              (ce            ),                                 .CE3              (ce            ),                                 .RST0             (~rstn         ),                                 .RST1             (~rstn         ),                                 .RST2             (~rstn         ),                                 .RST3             (~rstn         ),                                 .SignA            (wy2bf92         ),                                 .SignB            (tuc57f2         ),                                 .ShiftA0          (1'b0          ),                                 .ShiftA1          (1'b0          ),                                 .ShiftB0          (1'b0          ),                                 .ShiftB1          (1'b0          ),                                 .SROA             (              ),                                 .SROB             (              ),                                 .ADDNSUB          (1'b1          ),                                 .SUM              (ntaa50d[dba0875/4][DWIDTH+CWIDTH:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH];            end else begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;            end         end else if (dba0875%4 == 1) begin :fa6347d            pmi_dsp_mult #(.pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_gsr                   ("enable"      ),                           .pmi_source_control_a      ("parallel"    ),                           .pmi_source_control_b      ("parallel"    ),                           .module_type               ("pmi_dsp_mult"))            rg6680b(.A        (rtd8ac3[dba0875-1] ),                    .B        (ph3a01[dba0875-1] ),                    .SRIA     ({18{1'b0}}    ),                    .SRIB     ({18{1'b0}}    ),                    .CLK0     (clk           ),                    .CLK1     (clk           ),                    .CLK2     (clk           ),                    .CLK3     (clk           ),                    .CE0      (ce            ),                    .CE1      (ce            ),                    .CE2      (ce            ),                    .CE3      (ce            ),                    .RST0     (~rstn         ),                    .RST1     (~rstn         ),                    .RST2     (~rstn         ),                    .RST3     (~rstn         ),                    .SignA    (wy2bf92         ),                    .SignB    (tuc57f2         ),                    .SourceA  (1'b0          ),                    .SourceB  (1'b0          ),                    .SROA     (              ),                    .SROB     (              ),                    .P        (ntaa50d[dba0875/4][DWIDTH+CWIDTH-1:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH-1];               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH  ] = ntaa50d[dba0875/4][DWIDTH+CWIDTH-1];            end else begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH  ] = 1'b0;            end         end         if((FAMILY=="ECP3" || FAMILY=="ECP5U") && ((dba0875%4) > 0)) begin            assign mtdcfc[dba0875/4] = {(DWIDTH+CWIDTH+2){1'b0}};         end         for (tj1c509=0;tj1c509<(dba0875+3)/4;tj1c509=tj1c509+1) begin:lqd58e4            always @(posedge clk or negedge rstn)            begin
               if (!rstn)                  nrfcb95[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     nrfcb95[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};                  else if (tj1c509==(((dba0875+3)/4)-1) && (dba0875%4==3))                     nrfcb95[tj1c509] <= ntaa50d[tj1c509] + ntaa50d[tj1c509+1];                  else if(FAMILY=="ECP3" || FAMILY=="ECP5U")                     nrfcb95[tj1c509] <= ntaa50d[tj1c509] + mtdcfc[tj1c509];                  else                     nrfcb95[tj1c509] <= ntaa50d[tj1c509];               end            end            assign me78026[tj1c509] = nrfcb95[tj1c509];         end      end else begin :kfabde8         for (tj1c509=0;tj1c509<dba0875;tj1c509=tj1c509+1) begin:vx2d8a7            pmi_dsp_mult #(.pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_gsr                   ("enable"      ),                           .pmi_source_control_a      ("parallel"    ),                           .pmi_source_control_b      ("parallel"    ),                           .pmi_reg_inputa_clk        ("CLK0"        ),                           .pmi_reg_inputa_ce         ("CE0"         ),                           .pmi_reg_inputa_rst        ("RST0"        ),                           .pmi_reg_inputb_clk        ("CLK0"        ),                           .pmi_reg_inputb_ce         ("CE0"         ),                           .pmi_reg_inputb_rst        ("RST0"        ),                           .pmi_reg_pipeline_clk      ("CLK0"        ),                           .pmi_reg_pipeline_ce       ("CE0"         ),                           .pmi_reg_pipeline_rst      ("RST0"        ),                           .pmi_reg_output_clk        ("CLK0"        ),                           .pmi_reg_output_ce         ("CE0"         ),                           .pmi_reg_output_rst        ("RST0"        ),                           .pmi_reg_signeda_clk       ("CLK0"        ),                           .pmi_reg_signeda_ce        ("CE0"         ),                           .pmi_reg_signeda_rst       ("RST0"        ),                           .pmi_reg_signedb_clk       ("CLK0"        ),                           .pmi_reg_signedb_ce        ("CE0"         ),                           .pmi_reg_signedb_rst       ("RST0"        ),                           .module_type               ("pmi_dsp_mult"))            uicbde4(.A        (rtd8ac3[tj1c509]      ),                    .B        (ph3a01[tj1c509]      ),                    .SRIA     ({18{1'b0}}    ),                    .SRIB     ({18{1'b0}}    ),                    .CLK0     (clk           ),                    .CLK1     (clk           ),                    .CLK2     (clk           ),                    .CLK3     (clk           ),                    .CE0      (ce            ),                    .CE1      (ce            ),                    .CE2      (ce            ),                    .CE3      (ce            ),                    .RST0     (~rstn         ),                    .RST1     (~rstn         ),                    .RST2     (~rstn         ),                    .RST3     (~rstn         ),                    .SignA    (wy2bf92         ),                    .SignB    (tuc57f2         ),                    .SourceA  (1'b0          ),                    .SourceB  (1'b0          ),                    .SROA     (              ),                    .SROB     (              ),                    .P        (vk17a2[tj1c509]      ));         end         for (tj1c509=0;tj1c509<dba0875;tj1c509=tj1c509+1) begin:mt7e95            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};                  else                     zma24aa[tj1c509] <= vk17a2[tj1c509];               end            end         end         for (tj1c509=0;tj1c509<(dba0875+1)/2;tj1c509=tj1c509+1) begin:lde9d1a            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  ir2608b[tj1c509] <= {(DWIDTH+CWIDTH+1){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     ir2608b[tj1c509] <= {(DWIDTH+CWIDTH+1){1'b0}};                  else if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin                     if (tj1c509==(dba0875+1)/2-1 && dba0875%2==1)                        ir2608b[tj1c509] <= {zma24aa[tj1c509*2][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2]};                     else                        ir2608b[tj1c509] <= {zma24aa[tj1c509*2][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2]}+{zma24aa[tj1c509*2+1][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2+1]};                  end else begin                     if (tj1c509==(dba0875+1)/2-1 && dba0875%2==1)                        ir2608b[tj1c509] <= {1'b0,zma24aa[tj1c509*2]};                     else                        ir2608b[tj1c509] <= {1'b0,zma24aa[tj1c509*2]}+{1'b0,zma24aa[tj1c509*2+1]};                  end               end            end         end         for (tj1c509=0;tj1c509<((dba0875+1)/2+1)/2;tj1c509=tj1c509+1) begin:qvb437e            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  hd8b88b[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     hd8b88b[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};                  else if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin                     if (tj1c509==((((dba0875+1)/2+1)/2)-1) && ((((dba0875+1)/2)%2)==1))                        hd8b88b[tj1c509] <= {ir2608b[tj1c509*2][DWIDTH+CWIDTH],ir2608b[tj1c509*2]};                     else                        hd8b88b[tj1c509] <= {ir2608b[tj1c509*2][DWIDTH+CWIDTH],ir2608b[tj1c509*2]}+{ir2608b[tj1c509*2+1][DWIDTH+CWIDTH],ir2608b[tj1c509*2+1]};                  end else begin                     if (tj1c509==((((dba0875+1)/2+1)/2)-1) && ((((dba0875+1)/2)%2)==1))                        hd8b88b[tj1c509] <= {1'b0,ir2608b[tj1c509*2]};                     else                        hd8b88b[tj1c509] <= {1'b0,ir2608b[tj1c509*2]}+{1'b0,ir2608b[tj1c509*2+1]};                  end               end            end         end         for (tj1c509=0;tj1c509<(dba0875+3)/4;tj1c509=tj1c509+1) begin:dzc2bac            assign me78026[tj1c509] = hd8b88b[tj1c509];         end      end      if (dba0875 <= 4) begin:vk30b42         assign su5675f = me78026[0];      end else begin:me684ef          assign su5675f = xy1178c[jc6c0f4-2][0];         for (tj1c509=0;tj1c509<(1<<(jc6c0f4-2));tj1c509=tj1c509+1) begin:psc0434            if (tj1c509 >= ((dba0875+3)/4))               assign xy1178c[0][tj1c509] = {lqf4773{1'b0}};            else               assign xy1178c[0][tj1c509] = me78026[tj1c509];         end         for (tj1c509=0;tj1c509<(jc6c0f4-2);tj1c509=tj1c509+1) begin:qgcbe65            for (mt81ae=0;mt81ae<(1<<(jc6c0f4-tj1c509-3));mt81ae=mt81ae+1) begin:bn37b70               ps58ba0_Scaler #(.DWIDTH     (lqf4773+tj1c509),                        .DTYPE      ((DTYPE=="SIGNED" || CTYPE=="SIGNED") ? "SIGNED":"UNSIGNED"))               pfe6ae2 (.rstn    (rstn       ),                        .clk     (clk        ),                        .ce      (ofe284f         ),                        .sr      (do1427d         ),                        .nee4a89    (xy1178c[tj1c509  ][mt81ae*2  ][lqf4773+tj1c509-1:0]),                        .ri2544a    (xy1178c[tj1c509  ][mt81ae*2+1][lqf4773+tj1c509-1:0]),                        .dout    (xy1178c[tj1c509+1][mt81ae    ][lqf4773+tj1c509  :0]));            end         end      end   end
end
endgenerate
generate   assign doeb73 = {jrb559d{1'b0}};   if ((wj75c82>1) && (dba0875>1)) begin:xjc8fa1      always @(posedge clk or negedge rstn)      begin         if (!rstn)            xj403ad <= {jrb559d{1'b0}};         else if (ofe284f) begin            if (do1427d)               xj403ad <= {jrb559d{1'b0}};            else if (ipd9621[en7a160-2] && vv7e0d1[en7a160-2]) begin               if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  xj403ad <= th5011f + {{(jrb559d-zkee68c){fn55221[zkee68c-1]}},fn55221};               else                  xj403ad <= th5011f + {{(jrb559d-zkee68c){            1'b0}},fn55221};            end else if (vv7e0d1[en7a160-2]) begin               if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  xj403ad <= ne69404 + {{(jrb559d-zkee68c){fn55221[zkee68c-1]}},fn55221};               else                  xj403ad <= ne69404 + {{(jrb559d-zkee68c){            1'b0}},fn55221};            end         end      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};xwda026<={tuf19e8>>1,sud1e18[3]};psd0132<=sud1e18[4];ep80993<=sud1e18[5];ls4c9d<=sud1e18[6];icff004<=sud1e18[7];me7d77e<={pu1bac0>>1,sud1e18[8]};gq9d73b<=sud1e18[9];neeb9d9<=sud1e18[10];vv7e0d1<={tw8cbd4>>1,sud1e18[11]};ipd9621<={ym923dd>>1,sud1e18[12]};zk58869<={wl8f746>>1,sud1e18[13]};ng83478<={ng2f51c>>1,sud1e18[14]};ne69404<={xj403ad>>1,sud1e18[15]};th5011f<={doeb73>>1,sud1e18[16]};gd23fea<={rt6e6aa>>1,sud1e18[17]};mrfd548<={jcd559d>>1,sud1e18[18]};fn55221<={su5675f>>1,sud1e18[19]};zk48879<={sw9d7c0>>1,sud1e18[20]};qi21e5c<={pf5f00b>>1,sud1e18[21]};iccb80a<={sj95e00>>1,sud1e18[22]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=tuf19e8[0];ec1a3c3[2040]<=zm8cf43;ec1a3c3[2032]<=ay67a1b;ec1a3c3[2017]<=xl3d0d9;ec1a3c3[1987]<=dvalid_in;ec1a3c3[1927]<=pu1bac0[0];ec1a3c3[1865]<=doeb73[0];ec1a3c3[1806]<=tuc57f2;ec1a3c3[1682]<=rt6e6aa[0];ec1a3c3[1565]<=wy2bf92;ec1a3c3[1317]<=jcd559d[0];ec1a3c3[1172]<=sw9d7c0[0];ec1a3c3[1082]<=tw8cbd4[0];ec1a3c3[1023]<=ce;ec1a3c3[932]<=xj403ad[0];ec1a3c3[594]<=sj95e00[0];ec1a3c3[586]<=su5675f[0];ec1a3c3[466]<=ng2f51c[0];ec1a3c3[297]<=pf5f00b[0];ec1a3c3[233]<=wl8f746[0];ec1a3c3[116]<=ym923dd[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module ecb3f7f_Scaler (
                 rstn,
                 clk,
                 ce,
                 sr,
                 din,
                 lqc5a6d,
                 tuf19e8,
                 xl3d0d9,
                 dvalid_in,
                 pu1bac0,
                 fa580fa,
                 dvalid_out,
                 fac07d3,
                 dout,
                 fc99f8c
               );
parameter   fa66a78     = 9;
parameter   vv4a821     = 9;
parameter   ned55c5     = 20;
parameter   dba0875      = 4;
parameter   pu43ae    = 1;
parameter   qi21d72      = "SIGNED";
parameter   pueb90      = "SIGNED";
parameter   FAMILY     = "ECP5U";
localparam  DWIDTH     = fa66a78;
localparam  CWIDTH     = vv4a821;
localparam  DTYPE      = qi21d72;
localparam  CTYPE      = pueb90;
localparam  jc6c0f4     = (dba0875==1) ? 1 : ntc03e(dba0875-1);
localparam  xl9e35b    = DWIDTH+CWIDTH+1;
localparam  lqf4773    = DWIDTH+CWIDTH+2;
localparam  zkee68c    = DWIDTH+CWIDTH+jc6c0f4;
localparam  en7a160     = 3+jc6c0f4;
localparam  lf38893   = (dba0875+1)/2;
localparam  go53557       = 1'b1;
localparam  gd9aab8      = 1'b0;
localparam  je93e34   = (CWIDTH<=9 && DWIDTH<=9) ? "TRUE" : "FALSE";
localparam  ipc68e5         = (je93e34=="TRUE") ?  9 : 18;
localparam  qia3960         = (je93e34=="TRUE") ? 24 : 54;
input                         rstn;
input                         clk;
input                         ce;
input                         sr;
input [(fa66a78*dba0875)-1:0]    din;
input [(fa66a78*dba0875)-1:0]    lqc5a6d;
input [(vv4a821*dba0875)-1:0]    tuf19e8;
input                         xl3d0d9;
input                         dvalid_in;
input [pu43ae-1:0]           pu1bac0;
output                        fa580fa;
output                        dvalid_out;
output[pu43ae-1:0]           fac07d3;
output[ned55c5-1:0]            dout;
output[ned55c5-1:0]            fc99f8c;
wire tuc57f2;
wire wy2bf92;
reg [en7a160-1:0]           tw8cbd4           ;
reg [en7a160-1:0]           ng2f51c          ;
reg [pu43ae-1:0]          cm46bbc[en7a160-1:0] ;
wire[DWIDTH-1:0]           ohabaa9[dba0875:0];
wire[DWIDTH-1:0]           fn55359[dba0875:0];
wire[CWIDTH-1:0]           th6b3c2[dba0875:0];
reg [DWIDTH-1:0]           lf84d66[lf38893:0][dba0875:0];
reg [DWIDTH-1:0]           xy831b6[lf38893:0][dba0875:0];
reg [CWIDTH-1:0]           oub6724[lf38893:0][dba0875:0];
reg [DWIDTH-1:0]           co24212[lf38893:0];
reg [DWIDTH-1:0]           ps4244c[lf38893:0];
reg [DWIDTH-1:0]           ba898e7[lf38893:0];
reg [DWIDTH-1:0]           vx1cec3[lf38893:0];
reg [CWIDTH-1:0]           hbd87a1[lf38893:0];
reg [CWIDTH-1:0]           dmf43e3[lf38893:0];
wire[ipc68e5-1:0]               fa7c6a0[lf38893:0];
wire[ipc68e5-1:0]               icd40b1[lf38893:0];
wire[ipc68e5-1:0]               jr1627c[lf38893:0];
wire[ipc68e5-1:0]               zx4f9a3[lf38893:0];
wire[ipc68e5-1:0]               ec3479f[lf38893:0];
wire[ipc68e5-1:0]               mg5b2a[lf38893:0];
wire[qia3960-1:0]               zx40d74[lf38893:0];
wire                       ww56900[lf38893:0];
wire[qia3960-1:0]               tw2006d[lf38893:0];
reg [ned55c5-1:0]           anbe9af[lf38893:0][2:0];
reg [ned55c5-1:0]           lq5874e[lf38893:0][2:0];
wire[zkee68c-1:0]          hbe9ce5[jc6c0f4-1:0][(1<<(jc6c0f4-1))-1:0];
wire[zkee68c-1:0]          ice5d52[jc6c0f4-1:0][(1<<(jc6c0f4-1))-1:0];
wire[1:0]                  zzaa40c;
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [(fa66a78 * dba0875) - 1 : 0] lq5df83;
reg [(fa66a78 * dba0875) - 1 : 0] icfad3d;
reg [(vv4a821 * dba0875) - 1 : 0] xwda026;
reg ls4c9d;
reg icff004;
reg [pu43ae - 1 : 0] me7d77e;
reg gq9d73b;
reg neeb9d9;
reg [en7a160 - 1 : 0] vv7e0d1;
reg [en7a160 - 1 : 0] ng83478;
reg [1 : 0] uvfd6d0;
reg [2047:0] ec1a3c3;
wire [12:0] sud1e18;
localparam yz8f0c0 = 13,su78605 = 32'hfdffe44b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
assign zzaa40c = 2'b00;
generate   always @(posedge clk or negedge rstn)   begin      if (!rstn) begin         tw8cbd4  <= {en7a160{1'b0}};         ng2f51c <= {en7a160{1'b0}};      end else if(ofe284f) begin         if (do1427d) begin            tw8cbd4  <= {en7a160{1'b0}};            ng2f51c <= {en7a160{1'b0}};         end else begin            tw8cbd4  <= { vv7e0d1[en7a160-2:0], icff004};            ng2f51c <= {ng83478[en7a160-2:0],ls4c9d};         end      end   end   for (tj1c509=0;tj1c509<en7a160;tj1c509=tj1c509+1) begin:go6784f      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            cm46bbc[tj1c509] <= {pu43ae{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               cm46bbc[tj1c509] <= {pu43ae{1'b0}};            end else begin               cm46bbc[tj1c509] <= (tj1c509==0) ? me7d77e : cm46bbc[tj1c509-1];            end         end      end   end
endgenerate
assign dvalid_out  = vv7e0d1 [en7a160-1];
assign fa580fa = ng83478[en7a160-1];
assign fac07d3    = cm46bbc   [en7a160-1];
generate
begin :rv1693f   for (tj1c509=0;tj1c509<dba0875;tj1c509=tj1c509+1) begin:yxfd9d0      assign ohabaa9[tj1c509] = lq5df83[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH];      assign fn55359[tj1c509] = icfad3d[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH];      assign th6b3c2[tj1c509] = xwda026[(tj1c509+1)*CWIDTH-1:tj1c509*CWIDTH];   end   assign ohabaa9[dba0875] = {DWIDTH{1'b0}};   assign fn55359[dba0875] = {DWIDTH{1'b0}};   assign th6b3c2[dba0875] = {CWIDTH{1'b0}};      for (mt81ae=0;mt81ae<(dba0875+1);mt81ae=mt81ae+1) begin: ngad92e      always @(*) begin         lf84d66[0][mt81ae] = ohabaa9[mt81ae];         xy831b6[0][mt81ae] = fn55359[mt81ae];         oub6724[0][mt81ae] = th6b3c2[mt81ae];      end   end      for (tj1c509=0;tj1c509<lf38893;tj1c509=tj1c509+1) begin: gqb90d3            always @(*) begin         co24212[tj1c509] = ohabaa9[2*tj1c509];         ps4244c[tj1c509] = ohabaa9[2*tj1c509+1];      end            always @(*) begin         ba898e7[tj1c509] = fn55359[2*tj1c509];         vx1cec3[tj1c509] = fn55359[2*tj1c509+1];      end            always @(negedge clk or negedge rstn)      begin         if (!rstn) begin            hbd87a1[tj1c509] <= {CWIDTH{1'b0}};            dmf43e3[tj1c509] <= {CWIDTH{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               hbd87a1[tj1c509] <= {CWIDTH{1'b0}};               dmf43e3[tj1c509] <= {CWIDTH{1'b0}};            end else begin               hbd87a1[tj1c509] <= th6b3c2[2*tj1c509];               dmf43e3[tj1c509] <= th6b3c2[2*tj1c509+1];            end         end      end   end      for (tj1c509=0;tj1c509<lf38893;tj1c509=tj1c509+1) begin: twa8ede      if(DWIDTH==ipc68e5) begin         assign fa7c6a0[tj1c509] = co24212[tj1c509][DWIDTH-1:0];         assign icd40b1[tj1c509] = ps4244c[tj1c509][DWIDTH-1:0];         assign jr1627c[tj1c509] = ba898e7[tj1c509][DWIDTH-1:0];         assign zx4f9a3[tj1c509] = vx1cec3[tj1c509][DWIDTH-1:0];      end else if (DTYPE == "SIGNED") begin         assign fa7c6a0[tj1c509] = {{(ipc68e5-DWIDTH){co24212[tj1c509][DWIDTH-1]}},co24212[tj1c509][DWIDTH-1:0]};         assign icd40b1[tj1c509] = {{(ipc68e5-DWIDTH){ps4244c[tj1c509][DWIDTH-1]}},ps4244c[tj1c509][DWIDTH-1:0]};         assign jr1627c[tj1c509] = {{(ipc68e5-DWIDTH){ba898e7[tj1c509][DWIDTH-1]}},ba898e7[tj1c509][DWIDTH-1:0]};         assign zx4f9a3[tj1c509] = {{(ipc68e5-DWIDTH){vx1cec3[tj1c509][DWIDTH-1]}},vx1cec3[tj1c509][DWIDTH-1:0]};      end else begin         assign fa7c6a0[tj1c509] = {{(ipc68e5-DWIDTH){1'b0}},co24212[tj1c509][DWIDTH-1:0]};         assign icd40b1[tj1c509] = {{(ipc68e5-DWIDTH){1'b0}},ps4244c[tj1c509][DWIDTH-1:0]};         assign jr1627c[tj1c509] = {{(ipc68e5-DWIDTH){1'b0}},ba898e7[tj1c509][DWIDTH-1:0]};         assign zx4f9a3[tj1c509] = {{(ipc68e5-DWIDTH){1'b0}},vx1cec3[tj1c509][DWIDTH-1:0]};      end      if(CWIDTH==ipc68e5) begin         assign ec3479f[tj1c509] = hbd87a1[tj1c509][CWIDTH-1:0];         assign mg5b2a[tj1c509] = dmf43e3[tj1c509][CWIDTH-1:0];      end else if (CTYPE == "SIGNED") begin         assign ec3479f[tj1c509] = {{(ipc68e5-CWIDTH){hbd87a1[tj1c509][CWIDTH-1]}},hbd87a1[tj1c509][CWIDTH-1:0]};         assign mg5b2a[tj1c509] = {{(ipc68e5-CWIDTH){dmf43e3[tj1c509][CWIDTH-1]}},dmf43e3[tj1c509][CWIDTH-1:0]};      end else begin         assign ec3479f[tj1c509] = {{(ipc68e5-CWIDTH){1'b0}},hbd87a1[tj1c509][CWIDTH-1:0]};         assign mg5b2a[tj1c509] = {{(ipc68e5-CWIDTH){1'b0}},dmf43e3[tj1c509][CWIDTH-1:0]};      end   end   if(je93e34=="TRUE") begin : rv16c31      for (tj1c509=0;tj1c509<lf38893;tj1c509=tj1c509+1) begin: tu79ecd         dmcf66b_Scaler   #(.jp7b35b           (9),                            .czd9adf           (9),                            .fncd6fc           (9),                            .vv6b7e6           (9),                            .ip5bf36           (9),                            .dmdf9b5           (9),
                            .rtfcdab                      ("enable"),                            .pfe6d5f                   ("ECP5U"),                            .mt36aff    ("CLK0"),                            .tjb57fc     ("CE0"),                            .wlabfe6    ("RST0"),                            .vv5ff35    ("CLK0"),                            .cmff9af     ("CE0"),                            .vvfcd78    ("RST0"),                            .vve6bc7   ("CLK0"),                            .hq35e3f    ("CE0"),                            .jraf1fb   ("RST0"),                            .os78fde   ("CLK2"),                            .rtc7ef1    ("CE0"),                            .hq3f78e   ("RST0"),                            .lqfbc73    ("CLK0"),                            .mede39a     ("CE0"),                            .faf1cd0    ("RST0"),                            .tj8e683    ("CLK0"),                            .fa7341f     ("CE0"),                            .sj9a0fb    ("RST0"),                            .byd07dc   ("CLK0"),                            .vk83ee3    ("CE0"),                            .mg1f71a   ("RST0"),                            .fafb8d0   ("CLK2"),                            .shdc682    ("CE0"),                            .hbe3415   ("RST0"),
                            .uk1a0ae        ("CLK0"),                            .rgd0570         ("CE0"),                            .sw82b83        ("RST0"),                            .ou15c18        ("CLK0"),                            .sjae0c0         ("CE0"),                            .kd70604        ("RST0"),                            .ba83024        ("NONE"),                            .oh18123         ("CE0"),                            .zkc091d        ("RST0"),                            .xy48eb        ("CLK0"),                            .gq2475b         ("CE0"),                            .sj23ad9        ("RST0"),                            .kf1d6cd        ("CLK0"),                            .tueb66d         ("CE0"),                            .sh5b36a        ("RST0"),                            .czd9b54           ("CLK0"),                            .fncdaa4            ("CE0"),                            .ww6d527           ("RST0"),                            .uv6a939           ("CLK0"),                            .en549cd            ("CE0"),                            .qva4e6c           ("RST0"),                            .rv27364           ("CLK0"),                            .yz39b26            ("CE0"),                            .thcd935           ("RST0"),                            .fa6c9af        ("CLK0"),                             .ld64d7a         ("CE0"),                            .cb26bd6        ("RST0"),                            .ls35eb5        ("CLK0"),                            .phaf5ab         ("CE0"),                            .mr7ad5e        ("RST0"),                            .wjd6af4            ("FALSE"),                            .jrb57a5          ("B"),                            .uxabd2e          ("B"),                            .en5e975          ("OPA0"),                            .xwf4bad          ("OPA1"),                            .hda5d6b        ("HIGHSPEED"),                            .uk2eb5e        ("ZERO"),                            .en75af1       ("INTERNAL"),                            .jead78d        ("HIGHSPEED"),                            .vv6bc6b        ("ZERO"),                            .mr5e35f       ("INTERNAL"),                            .faf1afc              ("SHIFT_BYPASS"),                            .qi8d7e3            ("CLK0"),                            .fn6bf18                 ("DISABLED"),                            .pf5f8c7                 ("DISABLED"),                            .jpfc63f                 ("ENABLED"),                            .zxe31fe                 ("DISABLED"))                kf18ff6      (.rtc7fb4                          (fa7c6a0[tj1c509]),                            .jpf6992                          (ec3479f[tj1c509]),                            .ph325a8                          (icd40b1[tj1c509]),                            .xlb51cb                          (mg5b2a[tj1c509]),                            .ep39793                          (jr1627c[tj1c509]),                            .czf2704                          (zx4f9a3[tj1c509]),                            .kqe095b                      ((DTYPE == "SIGNED") ? 1'b1 : 1'b0),                            .ba256c3                      ((CTYPE == "SIGNED") ? 1'b1 : 1'b0),                            .mr5b0d8                      ((DTYPE == "SIGNED") ? 1'b1 : 1'b0),                            .wjc3627                      ((CTYPE == "SIGNED") ? 1'b1 : 1'b0),                            .hbd89ea                    (gd9aab8),                            .fp27ab1                    (gd9aab8),                            .meeac7e                          ({24{gd9aab8}}),                            .irb1f88                          ({24{gd9aab8}}),                            .fn7e22c                      (gd9aab8),                            .ks88b3a                         (),                            .nr459d1                         (),                            .gd2ce8f                        (uvfd6d0),                              .pu3a3e0                    (1'b0),                               .wwd1f03                     (1'b0),                               .ep8f818                          ({clk,~clk,clk,clk}),                             .goc447c                           ({ofe284f,ofe284f,ofe284f,ofe284f}),                            .mee0ca2                          ({4{!rstn}}),                            .rv32887                            (zx40d74[tj1c509]),                            .wy10fba                           (tw2006d[tj1c509]),                            .czf7400                        (ww56900[tj1c509]),                            .kf8017b                         (),                            .cobdc                         ()                            );      end   end else begin : uk5ee1      for (tj1c509=0;tj1c509<lf38893;tj1c509=tj1c509+1) begin: dz4ad5e         cm56af6_Scaler   #(.jp7b35b           (18),                            .czd9adf           (18),                            .fncd6fc           (18),                            .vv6b7e6           (18),                            .ip5bf36           (18),                            .dmdf9b5           (18),
                            .rtfcdab                      ("enable"),                            .pfe6d5f                   ("ECP5U"),                            .mt36aff    ("CLK0"),                            .tjb57fc     ("CE0"),                            .wlabfe6    ("RST0"),                            .vv5ff35    ("CLK0"),                            .cmff9af     ("CE0"),                            .vvfcd78    ("RST0"),                            .vve6bc7   ("CLK0"),                            .hq35e3f    ("CE0"),                            .jraf1fb   ("RST0"),                            .os78fde   ("CLK2"),                            .rtc7ef1    ("CE0"),                            .hq3f78e   ("RST0"),                            .lqfbc73    ("CLK0"),                            .mede39a     ("CE0"),                            .faf1cd0    ("RST0"),                            .tj8e683    ("CLK0"),                            .fa7341f     ("CE0"),                            .sj9a0fb    ("RST0"),                            .byd07dc   ("CLK0"),                            .vk83ee3    ("CE0"),                            .mg1f71a   ("RST0"),                            .fafb8d0   ("CLK2"),                            .shdc682    ("CE0"),                            .hbe3415   ("RST0"),
                            .uk1a0ae        ("CLK0"),                            .rgd0570         ("CE0"),                            .sw82b83        ("RST0"),                            .ou15c18        ("CLK0"),                            .sjae0c0         ("CE0"),                            .kd70604        ("RST0"),                            .ba83024        ("NONE"),                            .oh18123         ("CE0"),                            .zkc091d        ("RST0"),                            .xy48eb        ("CLK0"),                            .gq2475b         ("CE0"),                            .sj23ad9        ("RST0"),                            .kf1d6cd        ("CLK0"),                            .tueb66d         ("CE0"),                            .sh5b36a        ("RST0"),                            .czd9b54           ("CLK0"),                            .fncdaa4            ("CE0"),                            .ww6d527           ("RST0"),                            .uv6a939           ("CLK0"),                            .en549cd            ("CE0"),                            .qva4e6c           ("RST0"),                            .rv27364           ("CLK0"),                            .yz39b26            ("CE0"),                            .thcd935           ("RST0"),                            .fa6c9af        ("CLK0"),                             .ld64d7a         ("CE0"),                            .cb26bd6        ("RST0"),                            .ls35eb5        ("CLK0"),                            .phaf5ab         ("CE0"),                            .mr7ad5e        ("RST0"),                            .wjd6af4            ("FALSE"),                            .jrb57a5          ("B"),                            .uxabd2e          ("B"),                            .en5e975          ("OPA0"),                            .xwf4bad          ("OPA1"),                            .hda5d6b        ("HIGHSPEED"),                            .uk2eb5e        ("ZERO"),                            .en75af1       ("INTERNAL"),                            .jead78d        ("HIGHSPEED"),                            .vv6bc6b        ("ZERO"),                            .mr5e35f       ("INTERNAL"),                            .faf1afc              ("SHIFT_BYPASS"),                            .qi8d7e3            ("CLK0"),                            .fn6bf18                 ("DISABLED"),                            .pf5f8c7                 ("DISABLED"),                            .jpfc63f                 ("ENABLED"),                            .zxe31fe                 ("DISABLED"))                kf18ff6      (.rtc7fb4                          (fa7c6a0[tj1c509]),                            .jpf6992                          (ec3479f[tj1c509]),                            .ph325a8                          (icd40b1[tj1c509]),                            .xlb51cb                          (mg5b2a[tj1c509]),                            .ep39793                          (jr1627c[tj1c509]),                            .czf2704                          (zx4f9a3[tj1c509]),                            .kqe095b                      (go53557),                            .ba256c3                      (go53557),                            .mr5b0d8                      (go53557),                            .wjc3627                      (go53557),                            .hbd89ea                    (gd9aab8),                            .fp27ab1                    (gd9aab8),                            .meeac7e                          ({54{gd9aab8}}),                            .irb1f88                          ({54{gd9aab8}}),                            .fn7e22c                      (gd9aab8),                            .ks88b3a                         (),                            .nr459d1                         (),                            .ipc32dd                      (2'b01),                            .tj196ed                      (2'b01),                            .mecb76f                      (3'b000),                            .gd2ce8f                        (uvfd6d0),                              .ipede6e                           (4'b0100),                            .ep8f818                          ({clk,~clk,clk,clk}),                             .goc447c                           ({ofe284f,ofe284f,ofe284f,ofe284f}),                            .mee0ca2                          ({4{!rstn}}),                            .rv32887                            (zx40d74[tj1c509]),                            .wy10fba                           (tw2006d[tj1c509]),                            .czf7400                        (ww56900[tj1c509]),                            .kf8017b                         (),                            .cobdc                         ()                            );      end   end      for (tj1c509=0;tj1c509<lf38893;tj1c509=tj1c509+1) begin: sjb4aa1      always @(negedge clk or negedge rstn)      begin         if (!rstn) begin            lq5874e[tj1c509][0]  <= {ned55c5{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               lq5874e[tj1c509][0]  <= {ned55c5{1'b0}};            end else begin               lq5874e[tj1c509][0]  <= zx40d74[tj1c509][ned55c5-1:0];            end         end      end      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            anbe9af[tj1c509][0]  <= {ned55c5{1'b0}};            anbe9af[tj1c509][1]  <= {ned55c5{1'b0}};            lq5874e[tj1c509][1]  <= {ned55c5{1'b0}};            anbe9af[tj1c509][2]  <= {ned55c5{1'b0}};            lq5874e[tj1c509][2]  <= {ned55c5{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               anbe9af[tj1c509][0]  <= {ned55c5{1'b0}};               anbe9af[tj1c509][1]  <= {ned55c5{1'b0}};               lq5874e[tj1c509][1]  <= {ned55c5{1'b0}};               anbe9af[tj1c509][2]  <= {ned55c5{1'b0}};               lq5874e[tj1c509][2]  <= {ned55c5{1'b0}};            end else begin               anbe9af[tj1c509][0]  <= zx40d74[tj1c509][ned55c5-1:0];               anbe9af[tj1c509][1]  <= anbe9af[tj1c509][0];               lq5874e[tj1c509][1]  <= lq5874e[tj1c509][0];               anbe9af[tj1c509][2]  <= anbe9af[tj1c509][1];               lq5874e[tj1c509][2]  <= lq5874e[tj1c509][1];            end         end      end   end      
end
endgenerate
assign dout = hbe9ce5[jc6c0f4-1][0];
assign fc99f8c = ice5d52[jc6c0f4-1][0];
generate    for (tj1c509=0;tj1c509<(1<<(jc6c0f4-1));tj1c509=tj1c509+1) begin:psc0434      if (tj1c509 >= ((dba0875+1)/2)) begin         assign hbe9ce5[0][tj1c509] = {xl9e35b{1'b0}};         assign ice5d52[0][tj1c509] = {xl9e35b{1'b0}};      end else begin         assign hbe9ce5[0][tj1c509] = anbe9af[tj1c509][1];         assign ice5d52[0][tj1c509] = lq5874e[tj1c509][1];      end   end   for (tj1c509=0;tj1c509<(jc6c0f4-1);tj1c509=tj1c509+1) begin:qgcbe65      for (mt81ae=0;mt81ae<(1<<(jc6c0f4-tj1c509-2));mt81ae=mt81ae+1) begin:bn37b70         ps58ba0_Scaler #(.DWIDTH     (xl9e35b+tj1c509),                  .DTYPE      ((DTYPE=="SIGNED" || CTYPE=="SIGNED") ? "SIGNED":"UNSIGNED"))         ri2a7b9   (.rstn    (rstn       ),                  .clk     (clk        ),                  .ce      (ofe284f         ),                  .sr      (do1427d         ),                  .nee4a89    (hbe9ce5[tj1c509  ][mt81ae*2  ][xl9e35b+tj1c509-1:0]),                  .ri2544a    (hbe9ce5[tj1c509  ][mt81ae*2+1][xl9e35b+tj1c509-1:0]),                  .dout    (hbe9ce5[tj1c509+1][mt81ae    ][xl9e35b+tj1c509  :0]));         ps58ba0_Scaler #(.DWIDTH     (xl9e35b+tj1c509),                  .DTYPE      ((DTYPE=="SIGNED" || CTYPE=="SIGNED") ? "SIGNED":"UNSIGNED"))         je2ab11   (.rstn    (rstn       ),                  .clk     (clk        ),                  .ce      (ofe284f         ),                  .sr      (do1427d         ),                  .nee4a89    (ice5d52[tj1c509  ][mt81ae*2  ][xl9e35b+tj1c509-1:0]),                  .ri2544a    (ice5d52[tj1c509  ][mt81ae*2+1][xl9e35b+tj1c509-1:0]),                  .dout    (ice5d52[tj1c509+1][mt81ae    ][xl9e35b+tj1c509  :0]));      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};icfad3d<={lqc5a6d>>1,sud1e18[3]};xwda026<={tuf19e8>>1,sud1e18[4]};ls4c9d<=sud1e18[5];icff004<=sud1e18[6];me7d77e<={pu1bac0>>1,sud1e18[7]};gq9d73b<=sud1e18[8];neeb9d9<=sud1e18[9];vv7e0d1<={tw8cbd4>>1,sud1e18[10]};ng83478<={ng2f51c>>1,sud1e18[11]};uvfd6d0<={zzaa40c>>1,sud1e18[12]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=lqc5a6d[0];ec1a3c3[2040]<=tuf19e8[0];ec1a3c3[2033]<=xl3d0d9;ec1a3c3[2019]<=dvalid_in;ec1a3c3[1991]<=pu1bac0[0];ec1a3c3[1934]<=tuc57f2;ec1a3c3[1821]<=wy2bf92;ec1a3c3[1595]<=tw8cbd4[0];ec1a3c3[1142]<=ng2f51c[0];ec1a3c3[1023]<=ce;ec1a3c3[237]<=zzaa40c[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module pu14efe_Scaler (
                 rstn,
                 clk,
                 ce,
                 sr,
                 din,
                 tuf19e8,
                 zm8cf43,
                 ay67a1b,
                 xl3d0d9,
                 dvalid_in,
                 pu1bac0,
                 fa580fa,
                 dvalid_out,
                 fac07d3,
                 dout
               );
parameter   fa66a78     = 18;
parameter   vv4a821     = 18;
parameter   ned55c5     = 41;
parameter   dba0875      = 4;
parameter   pu43ae    = 1;
parameter   qi21d72      = "SIGNED";
parameter   pueb90      = "SIGNED";
parameter   wj75c82   = 4;
parameter   FAMILY     = "ECP2";
localparam  DWIDTH     = (qi21d72=="UNSIGNED"&&pueb90=="SIGNED") ? (fa66a78+1) : fa66a78;
localparam  CWIDTH     = (qi21d72=="SIGNED"&&pueb90=="UNSIGNED") ? (vv4a821+1) : vv4a821;
localparam  DTYPE      = (qi21d72=="UNSIGNED"&&pueb90=="SIGNED") ? "SIGNED" : qi21d72;
localparam  CTYPE      = (qi21d72=="SIGNED"&&pueb90=="UNSIGNED") ? "SIGNED" : pueb90;
localparam  jc6c0f4     = (dba0875==1) ? 1 : ntc03e(dba0875-1);
localparam  lqf4773    = DWIDTH+CWIDTH+2;
localparam  zkee68c    = DWIDTH+CWIDTH+jc6c0f4;
localparam  jrb559d  = (((qi21d72=="UNSIGNED"&&pueb90=="SIGNED")||(qi21d72=="SIGNED"&&pueb90=="UNSIGNED"))) ? (ned55c5+1) : ned55c5;
localparam  en7a160     = (dba0875<=4) ? 4 : (ntc03e(dba0875-1)+2);
localparam  xl6846    = (DTYPE=="SIGNED") ? "on" : "off";
localparam  qva11b0      = "LUT";
input                         rstn;
input                         clk;
input                         ce;
input                         sr;
input [(fa66a78*dba0875)-1:0]    din;
input [(vv4a821*dba0875)-1:0]    tuf19e8;
input                         zm8cf43;
input                         ay67a1b;
input                         xl3d0d9;
input                         dvalid_in;
input [pu43ae-1:0]           pu1bac0;
output                        fa580fa;
output                        dvalid_out;
output[pu43ae-1:0]           fac07d3;
output[ned55c5-1:0]            dout;
wire tuc57f2;
wire wy2bf92;
reg [en7a160-1:0]           tw8cbd4           ;
reg [en7a160-1:0]           ym923dd             ;
reg [en7a160-1:0]           wl8f746           ;
reg [en7a160-1:0]           ng2f51c          ;
reg [pu43ae-1:0]          cm46bbc[en7a160-1:0] ;
wire[DWIDTH-1:0]           rtd8ac3[dba0875+3:0];
wire[CWIDTH-1:0]           ph3a01[dba0875+3:0];
reg [jrb559d-1:0]        xj403ad            ;
wire[jrb559d-1:0]        doeb73;
wire[DWIDTH+CWIDTH-1:0]    rt6e6aa;
reg [DWIDTH+CWIDTH-1:0]    jcd559d;
wire[zkee68c-1:0]          su5675f;
wire[zkee68c-1:0]          sw9d7c0;
reg [zkee68c-1:0]          pf5f00b                      ;
wire[DWIDTH+CWIDTH-1:0]    vk17a2  [dba0875-1:0];
reg [DWIDTH+CWIDTH-1:0]    zma24aa [dba0875:0]               ;
wire[DWIDTH+CWIDTH+1:0]    ntaa50d [(dba0875+3)/4  :0];
wire[DWIDTH+CWIDTH+1:0]    mtdcfc[(dba0875+3)/4  :0];
reg [DWIDTH+CWIDTH+1:0]    nrfcb95[(dba0875+3)/4-1:0]       ;
reg [DWIDTH+CWIDTH:0]      sj95e00                          ;
wire[zkee68c-1:0]          me78026   [(dba0875+3)/4-1:0];
reg [DWIDTH+CWIDTH:0]      ir2608b [(dba0875+1)/2:0]         ;
reg [DWIDTH+CWIDTH+1:0]    hd8b88b [((dba0875+1)/2+1)/2-1:0] ;
wire[zkee68c-1:0]          xy1178c    [jc6c0f4-2:0][(1<<(jc6c0f4-2))-1:0];
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [(fa66a78 * dba0875) - 1 : 0] lq5df83;
reg [(vv4a821 * dba0875) - 1 : 0] xwda026;
reg psd0132;
reg ep80993;
reg ls4c9d;
reg icff004;
reg [pu43ae - 1 : 0] me7d77e;
reg gq9d73b;
reg neeb9d9;
reg [en7a160 - 1 : 0] vv7e0d1;
reg [en7a160 - 1 : 0] ipd9621;
reg [en7a160 - 1 : 0] zk58869;
reg [en7a160 - 1 : 0] ng83478;
reg [jrb559d - 1 : 0] ne69404;
reg [jrb559d - 1 : 0] th5011f;
reg [DWIDTH + CWIDTH - 1 : 0] gd23fea;
reg [DWIDTH + CWIDTH - 1 : 0] mrfd548;
reg [zkee68c - 1 : 0] fn55221;
reg [zkee68c - 1 : 0] zk48879;
reg [zkee68c - 1 : 0] qi21e5c;
reg [DWIDTH + CWIDTH : 0] iccb80a;
reg [2047:0] ec1a3c3;
wire [22:0] sud1e18;
localparam yz8f0c0 = 23,su78605 = 32'hfdffd14b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
generate   always @(posedge clk or negedge rstn)   begin      if (!rstn) begin         tw8cbd4  <= {en7a160{1'b0}};         ym923dd    <= {en7a160{1'b0}};         wl8f746  <= {en7a160{1'b0}};         ng2f51c <= {en7a160{1'b0}};      end else if(ofe284f) begin         if (do1427d) begin            tw8cbd4  <= {en7a160{1'b0}};            ym923dd    <= {en7a160{1'b0}};            wl8f746  <= {en7a160{1'b0}};            ng2f51c <= {en7a160{1'b0}};         end else begin            tw8cbd4  <= { vv7e0d1[en7a160-2:0], icff004};            ym923dd    <= {   ipd9621[en7a160-2:0],   psd0132};            wl8f746  <= { zk58869[en7a160-2:0], ep80993};            ng2f51c <= {ng83478[en7a160-2:0],ls4c9d};         end      end   end   for (tj1c509=0;tj1c509<en7a160;tj1c509=tj1c509+1) begin:go6784f      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            cm46bbc[tj1c509] <= {pu43ae{1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               cm46bbc[tj1c509] <= {pu43ae{1'b0}};            end else begin               cm46bbc[tj1c509] <= (tj1c509==0) ? me7d77e : cm46bbc[tj1c509-1];            end         end      end   end
endgenerate
assign dvalid_out  = zk58869 [en7a160-1];
assign fa580fa = ng83478[en7a160-1];
assign fac07d3    = cm46bbc   [en7a160-1];
generate   if(dba0875 == 1) begin      if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin         assign dout = {mrfd548[ned55c5],mrfd548[ned55c5-2:0]};      end else begin         assign dout = mrfd548[ned55c5-1:0];      end   end else begin      if (wj75c82 > 1) begin:mta4248         assign dout = ne69404[ned55c5-1:0];      end else begin         assign dout = fn55221[ned55c5-1:0];      end   end
endgenerate
generate
begin   if (DTYPE == "SIGNED") assign wy2bf92 = 1'b1;   else                   assign wy2bf92 = 1'b0;   if (CTYPE == "SIGNED") assign tuc57f2 = 1'b1;   else                   assign tuc57f2 = 1'b0;   for (tj1c509=0;tj1c509<dba0875+4;tj1c509=tj1c509+1) begin:zma8dc8      if(tj1c509<dba0875) begin         if(qi21d72=="UNSIGNED"&&pueb90=="SIGNED") begin            assign rtd8ac3[tj1c509] = {1'b0,lq5df83[(tj1c509+1)*fa66a78-1:tj1c509*fa66a78]};         end else begin            assign rtd8ac3[tj1c509] = lq5df83[(tj1c509+1)*fa66a78-1:tj1c509*fa66a78];         end         if(qi21d72=="SIGNED"&&pueb90=="UNSIGNED") begin            assign ph3a01[tj1c509] = {1'b0,xwda026[(tj1c509+1)*vv4a821-1:tj1c509*vv4a821]};         end else begin            assign ph3a01[tj1c509] = xwda026[(tj1c509+1)*vv4a821-1:tj1c509*vv4a821];         end      end else begin         assign rtd8ac3[tj1c509] = {DWIDTH{1'b0}};         assign ph3a01[tj1c509] = {CWIDTH{1'b0}};      end   end   if (dba0875==1) begin:sj8a1ce      pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                     .pmi_datab_width           (CWIDTH        ),                     .pmi_sign                  (xl6846       ),                     .pmi_additional_pipeline   (1             ),                     .pmi_input_reg             ("on"          ),                     .pmi_output_reg            ("on"          ),                     .pmi_family                (FAMILY        ),                     .pmi_implementation        (qva11b0         ),                     .module_type               ("pmi_mult"    ))      cmceb8d        ( .DataA                     (rtd8ac3[0]       ),                     .DataB                     (ph3a01[0]       ),                     .Clock                     (clk           ),                     .ClkEn                     (ce            ),                     .Aclr                      (~rstn         ),                     .Result                    (rt6e6aa        ));      always @(posedge clk or negedge rstn)      begin         if (!rstn) begin            jcd559d <= {(DWIDTH+CWIDTH+16){1'b0}};         end else if(ofe284f) begin            if (do1427d) begin               jcd559d <= {(DWIDTH+CWIDTH+16){1'b0}};            end else begin               jcd559d <= gd23fea;            end         end      end   end else if (dba0875==2) begin:mg104fa      if (DWIDTH <= 18 && CWIDTH <= 18) begin :ay4ce94         pmi_multaddsub     #(.pmi_dataa_width           (DWIDTH           ),                              .pmi_datab_width           (CWIDTH           ),                              .pmi_sign                  (xl6846          ),                              .pmi_additional_pipeline   (1                ),                              .pmi_add_sub               ("add"            ),                              .pmi_input_reg             ("on"             ),                              .pmi_output_reg            ("on"             ),                              .pmi_family                (FAMILY           ),                              .pmi_implementation        (qva11b0            ),                              .module_type               ("pmi_multaddsub" ))         bl4f84b                (.DataA0                    (rtd8ac3[0]          ),                              .DataA1                    (rtd8ac3[1]          ),                              .DataB0                    (ph3a01[0]          ),                              .DataB1                    (ph3a01[1]          ),                              .Clock                     (clk              ),                              .ClkEn                     (ce               ),                              .Aclr                      (~rstn            ),                              .Result                    (sw9d7c0          ));         always @(posedge clk or negedge rstn)         begin            if (!rstn)               pf5f00b <= {(DWIDTH+CWIDTH+1){1'b0}};            else if(ofe284f) begin               if (do1427d)                  pf5f00b <= {(DWIDTH+CWIDTH+1){1'b0}};               else                  pf5f00b <= zk48879;            end         end         assign su5675f = qi21e5c;      end else begin :dm525f3         pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                        .pmi_datab_width           (CWIDTH        ),                        .pmi_sign                  (xl6846       ),                        .pmi_additional_pipeline   (1             ),                        .pmi_input_reg             ("on"          ),                        .pmi_output_reg            ("on"          ),                        .pmi_family                (FAMILY        ),                        .pmi_implementation        (qva11b0         ),                        .module_type               ("pmi_mult"    ))         rg6680b     (  .DataA                     (rtd8ac3[0]       ),                        .DataB                     (ph3a01[0]       ),                        .Clock                     (clk           ),                        .ClkEn                     (ce            ),                        .Aclr                      (~rstn         ),                        .Result                    (vk17a2[0]       ));        pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                        .pmi_datab_width           (CWIDTH        ),                        .pmi_sign                  (xl6846       ),                        .pmi_additional_pipeline   (1             ),                        .pmi_input_reg             ("on"          ),                        .pmi_output_reg            ("on"          ),                        .pmi_family                (FAMILY        ),                        .pmi_implementation        (qva11b0         ),                        .module_type               ("pmi_mult"    ))         uicbde4     (  .DataA                     (rtd8ac3[1]       ),                        .DataB                     (ph3a01[1]       ),                        .Clock                     (clk           ),                        .ClkEn                     (ce            ),                        .Aclr                      (~rstn         ),                        .Result                    (vk17a2[1]       ));         for (tj1c509=0;tj1c509<2;tj1c509=tj1c509+1) begin:mt7e95            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};                  else                     zma24aa[tj1c509] <= vk17a2[tj1c509];               end            end         end         always @(posedge clk or negedge rstn)         begin            if (!rstn)               sj95e00 <= {(DWIDTH+CWIDTH+1){1'b0}};            else if(ofe284f) begin               if (do1427d)                  sj95e00 <= {(DWIDTH+CWIDTH+1){1'b0}};               else if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  sj95e00 <= {zma24aa[0][DWIDTH+CWIDTH-1],zma24aa[0]}+{zma24aa[1][DWIDTH+CWIDTH-1],zma24aa[1]};               else                  sj95e00 <= {1'b0,zma24aa[0]}+{1'b0,zma24aa[1]};            end         end         assign su5675f = iccb80a;      end   end else begin:ykcee8b      if (DWIDTH <= 18 && CWIDTH <= 18) begin :god160f         for (tj1c509=0;tj1c509<(dba0875/4);tj1c509=tj1c509+1) begin:facf64b            pmi_multaddsubsum  #(.pmi_dataa_width           (DWIDTH           ),                                 .pmi_datab_width           (CWIDTH           ),                                 .pmi_sign                  (xl6846          ),                                 .pmi_additional_pipeline   (1                ),                                 .pmi_add_sub0              ("add"            ),                                 .pmi_add_sub1              ("add"            ),                                 .pmi_input_reg             ("on"             ),                                 .pmi_output_reg            ("on"             ),                                 .pmi_family                (FAMILY
           ),                                 .pmi_implementation        (qva11b0            ),                                 .module_type               ("pmi_multaddsubsum"))            ho69611          ( .DataA0                    (rtd8ac3[tj1c509*4+0]     ),                                 .DataA1                    (rtd8ac3[tj1c509*4+1]     ),                                 .DataA2                    (rtd8ac3[tj1c509*4+2]     ),                                 .DataA3                    (rtd8ac3[tj1c509*4+3]     ),                                 .DataB0                    (ph3a01[tj1c509*4+0]     ),                                 .DataB1                    (ph3a01[tj1c509*4+1]     ),                                 .DataB2                    (ph3a01[tj1c509*4+2]     ),                                 .DataB3                    (ph3a01[tj1c509*4+3]     ),                                 .Clock                     (clk              ),                                 .ClkEn                     (ce               ),                                 .Aclr                      (~rstn            ),                                 .Result                    (ntaa50d[tj1c509]        ));         end         if (dba0875%4 == 3) begin :lqe4e1d            pmi_multaddsub     #(.pmi_dataa_width           (DWIDTH           ),                                 .pmi_datab_width           (CWIDTH           ),                                 .pmi_sign                  (xl6846          ),                                 .pmi_additional_pipeline   (1                ),                                 .pmi_add_sub               ("add"            ),                                 .pmi_input_reg             ("on"             ),                                 .pmi_output_reg            ("on"             ),                                 .pmi_family                (FAMILY           ),                                 .pmi_implementation        (qva11b0            ),                                 .module_type               ("pmi_multaddsub" ))            ep1d5b4              (.DataA0                    (rtd8ac3[dba0875-3]    ),                                 .DataA1                    (rtd8ac3[dba0875-2]    ),                                 .DataB0                    (ph3a01[dba0875-3]    ),                                 .DataB1                    (ph3a01[dba0875-2]    ),                                 .Clock                     (clk              ),                                 .ClkEn                     (ce               ),                                 .Aclr                      (~rstn            ),                                 .Result                    (ntaa50d[dba0875/4][DWIDTH+CWIDTH:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin :nt8b8ee               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH];            end else begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;            end            pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_sign                  (xl6846       ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_implementation        (qva11b0         ),                           .module_type               ("pmi_mult"    ))            ukb9c3d      (  .DataA                     (rtd8ac3[dba0875-1] ),                           .DataB                     (ph3a01[dba0875-1] ),                           .Clock                     (clk           ),                           .ClkEn                     (ce            ),                           .Aclr                      (~rstn         ),                           .Result                    (ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin :gd80e1f               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH+1] = ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1];               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH  ] = ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH-1];            end else begin               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH+1] = 1'b0;               assign ntaa50d[(dba0875/4)+1][DWIDTH+CWIDTH  ] = 1'b0;            end         end else if (dba0875%4 == 2) begin :lq7304b            pmi_multaddsub     #(.pmi_dataa_width           (DWIDTH           ),                                 .pmi_datab_width           (CWIDTH           ),                                 .pmi_sign                  (xl6846          ),                                 .pmi_additional_pipeline   (1                ),                                 .pmi_add_sub               ("add"            ),                                 .pmi_input_reg             ("on"             ),                                 .pmi_output_reg            ("on"             ),                                 .pmi_family                (FAMILY           ),                                 .pmi_implementation        (qva11b0            ),                                 .module_type               ("pmi_multaddsub" ))            ep1d5b4              (.DataA0                    (rtd8ac3[dba0875-2]    ),                                 .DataA1                    (rtd8ac3[dba0875-1]    ),                                 .DataB0                    (ph3a01[dba0875-2]    ),                                 .DataB1                    (ph3a01[dba0875-1]    ),                                 .Clock                     (clk              ),                                 .ClkEn                     (ce               ),                                 .Aclr                      (~rstn            ),                                 .Result                    (ntaa50d[dba0875/4][DWIDTH+CWIDTH:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin :gq3edf5               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH];            end else begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;            end         end else if (dba0875%4 == 1) begin :fa6347d            pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_sign                  (xl6846       ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_implementation        (qva11b0         ),                           .module_type               ("pmi_mult"    ))            ukb9c3d      (  .DataA                     (rtd8ac3[dba0875-1] ),                           .DataB                     (ph3a01[dba0875-1] ),                           .Clock                     (clk           ),                           .ClkEn                     (ce            ),                           .Aclr                      (~rstn         ),                           .Result                    (ntaa50d[(dba0875/4)][DWIDTH+CWIDTH-1:0]));            if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin :psf46be               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = ntaa50d[dba0875/4][DWIDTH+CWIDTH-1];               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH  ] = ntaa50d[dba0875/4][DWIDTH+CWIDTH-1];            end else begin               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH+1] = 1'b0;               assign ntaa50d[dba0875/4][DWIDTH+CWIDTH  ] = 1'b0;            end         end         for (tj1c509=0;tj1c509<(dba0875+3)/4;tj1c509=tj1c509+1) begin:lqd58e4            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  nrfcb95[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};
               else if (ofe284f) begin                  if (do1427d)                     nrfcb95[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};                  else if (tj1c509==(((dba0875+3)/4)-1) && (dba0875%4==3))                     nrfcb95[tj1c509] <= ntaa50d[tj1c509] + ntaa50d[tj1c509+1];                  else                     nrfcb95[tj1c509] <= ntaa50d[tj1c509];               end            end            assign me78026[tj1c509] = nrfcb95[tj1c509];         end      end else begin :cmd17bb         for (tj1c509=0;tj1c509<dba0875;tj1c509=tj1c509+1) begin:vx2d8a7            pmi_mult    #( .pmi_dataa_width           (DWIDTH        ),                           .pmi_datab_width           (CWIDTH        ),                           .pmi_sign                  (xl6846       ),                           .pmi_additional_pipeline   (1             ),                           .pmi_input_reg             ("on"          ),                           .pmi_output_reg            ("on"          ),                           .pmi_family                (FAMILY        ),                           .pmi_implementation        (qva11b0         ),                           .module_type               ("pmi_mult"    ))            ukb9c3d      (  .DataA                     (rtd8ac3[tj1c509]      ),                           .DataB                     (ph3a01[tj1c509]      ),                           .Clock                     (clk           ),                           .ClkEn                     (ce            ),                           .Aclr                      (~rstn         ),                           .Result                    (vk17a2[tj1c509]      ));         end         for (tj1c509=0;tj1c509<dba0875;tj1c509=tj1c509+1) begin:mt7e95            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     zma24aa[tj1c509] <= {(DWIDTH+CWIDTH){1'b0}};                  else                     zma24aa[tj1c509] <= vk17a2[tj1c509];               end            end         end         for (tj1c509=0;tj1c509<(dba0875+1)/2;tj1c509=tj1c509+1) begin:lde9d1a            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  ir2608b[tj1c509] <= {(DWIDTH+CWIDTH+1){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     ir2608b[tj1c509] <= {(DWIDTH+CWIDTH+1){1'b0}};                  else if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin                     if (tj1c509==(dba0875+1)/2-1 && dba0875%2==1)                        ir2608b[tj1c509] <= {zma24aa[tj1c509*2][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2]};                     else                        ir2608b[tj1c509] <= {zma24aa[tj1c509*2][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2]}+{zma24aa[tj1c509*2+1][DWIDTH+CWIDTH-1],zma24aa[tj1c509*2+1]};                  end else begin                     if (tj1c509==(dba0875+1)/2-1 && dba0875%2==1)                        ir2608b[tj1c509] <= {1'b0,zma24aa[tj1c509*2]};                     else                        ir2608b[tj1c509] <= {1'b0,zma24aa[tj1c509*2]}+{1'b0,zma24aa[tj1c509*2+1]};                  end               end            end         end         for (tj1c509=0;tj1c509<((dba0875+1)/2+1)/2;tj1c509=tj1c509+1) begin:qvb437e            always @(posedge clk or negedge rstn)            begin               if (!rstn)                  hd8b88b[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};               else if (ofe284f) begin                  if (do1427d)                     hd8b88b[tj1c509] <= {(DWIDTH+CWIDTH+2){1'b0}};                  else if (DTYPE=="SIGNED" || CTYPE=="SIGNED") begin                     if (tj1c509==((((dba0875+1)/2+1)/2)-1) && ((((dba0875+1)/2)%2)==1))                        hd8b88b[tj1c509] <= {ir2608b[tj1c509*2][DWIDTH+CWIDTH],ir2608b[tj1c509*2]};                     else                        hd8b88b[tj1c509] <= {ir2608b[tj1c509*2][DWIDTH+CWIDTH],ir2608b[tj1c509*2]}+{ir2608b[tj1c509*2+1][DWIDTH+CWIDTH],ir2608b[tj1c509*2+1]};                  end else begin                     if (tj1c509==((((dba0875+1)/2+1)/2)-1) && ((((dba0875+1)/2)%2)==1))                        hd8b88b[tj1c509] <= {1'b0,ir2608b[tj1c509*2]};                     else                        hd8b88b[tj1c509] <= {1'b0,ir2608b[tj1c509*2]}+{1'b0,ir2608b[tj1c509*2+1]};                  end               end            end         end         for (tj1c509=0;tj1c509<(dba0875+3)/4;tj1c509=tj1c509+1) begin:dzc2bac            assign me78026[tj1c509] = hd8b88b[tj1c509];         end      end      if (dba0875 <= 4) begin:vk30b42         assign su5675f = me78026[0];      end else begin:me684ef          assign su5675f = xy1178c[jc6c0f4-2][0];         for (tj1c509=0;tj1c509<(1<<(jc6c0f4-2));tj1c509=tj1c509+1) begin:psc0434            if (tj1c509 >= ((dba0875+3)/4))               assign xy1178c[0][tj1c509] = {lqf4773{1'b0}};            else               assign xy1178c[0][tj1c509] = me78026[tj1c509];         end         for (tj1c509=0;tj1c509<(jc6c0f4-2);tj1c509=tj1c509+1) begin:qgcbe65            for (mt81ae=0;mt81ae<(1<<(jc6c0f4-tj1c509-3));mt81ae=mt81ae+1) begin:bn37b70               ps58ba0_Scaler #(.DWIDTH     (lqf4773+tj1c509),                        .DTYPE      ((DTYPE=="SIGNED" || CTYPE=="SIGNED") ? "SIGNED":"UNSIGNED"))               pfe6ae2 (.rstn    (rstn       ),                        .clk     (clk        ),                        .ce      (ofe284f         ),                        .sr      (do1427d         ),                        .nee4a89    (xy1178c[tj1c509  ][mt81ae*2  ][lqf4773+tj1c509-1:0]),                        .ri2544a    (xy1178c[tj1c509  ][mt81ae*2+1][lqf4773+tj1c509-1:0]),                        .dout    (xy1178c[tj1c509+1][mt81ae    ][lqf4773+tj1c509  :0]));            end         end      end   end
end
endgenerate
generate   assign doeb73 = {jrb559d{1'b0}};   if ((wj75c82>1) && (dba0875>1)) begin:xjc8fa1      always @(posedge clk or negedge rstn)      begin         if (!rstn)            xj403ad <= {jrb559d{1'b0}};         else if (ofe284f) begin            if (do1427d)               xj403ad <= {jrb559d{1'b0}};            else if (ipd9621[en7a160-2] && vv7e0d1[en7a160-2]) begin               if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  xj403ad <= th5011f + {{(jrb559d-zkee68c){fn55221[zkee68c-1]}},fn55221};               else                  xj403ad <= th5011f + {{(jrb559d-zkee68c){            1'b0}},fn55221};            end else if (vv7e0d1[en7a160-2]) begin               if (DTYPE=="SIGNED" || CTYPE=="SIGNED")                  xj403ad <= ne69404 + {{(jrb559d-zkee68c){fn55221[zkee68c-1]}},fn55221};               else                  xj403ad <= ne69404 + {{(jrb559d-zkee68c){            1'b0}},fn55221};            end         end      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};xwda026<={tuf19e8>>1,sud1e18[3]};psd0132<=sud1e18[4];ep80993<=sud1e18[5];ls4c9d<=sud1e18[6];icff004<=sud1e18[7];me7d77e<={pu1bac0>>1,sud1e18[8]};gq9d73b<=sud1e18[9];neeb9d9<=sud1e18[10];vv7e0d1<={tw8cbd4>>1,sud1e18[11]};ipd9621<={ym923dd>>1,sud1e18[12]};zk58869<={wl8f746>>1,sud1e18[13]};ng83478<={ng2f51c>>1,sud1e18[14]};ne69404<={xj403ad>>1,sud1e18[15]};th5011f<={doeb73>>1,sud1e18[16]};gd23fea<={rt6e6aa>>1,sud1e18[17]};mrfd548<={jcd559d>>1,sud1e18[18]};fn55221<={su5675f>>1,sud1e18[19]};zk48879<={sw9d7c0>>1,sud1e18[20]};qi21e5c<={pf5f00b>>1,sud1e18[21]};iccb80a<={sj95e00>>1,sud1e18[22]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=tuf19e8[0];ec1a3c3[2040]<=zm8cf43;ec1a3c3[2033]<=ay67a1b;ec1a3c3[2019]<=xl3d0d9;ec1a3c3[1990]<=dvalid_in;ec1a3c3[1939]<=jcd559d[0];ec1a3c3[1933]<=pu1bac0[0];ec1a3c3[1831]<=su5675f[0];ec1a3c3[1819]<=tuc57f2;ec1a3c3[1778]<=xj403ad[0];ec1a3c3[1615]<=sw9d7c0[0];ec1a3c3[1591]<=wy2bf92;ec1a3c3[1508]<=doeb73[0];ec1a3c3[1182]<=pf5f00b[0];ec1a3c3[1135]<=tw8cbd4[0];ec1a3c3[1023]<=ce;ec1a3c3[969]<=rt6e6aa[0];ec1a3c3[889]<=ng2f51c[0];ec1a3c3[444]<=wl8f746[0];ec1a3c3[317]<=sj95e00[0];ec1a3c3[222]<=ym923dd[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module dmcf66b_Scaler #(
    parameter jp7b35b = 9,    parameter czd9adf = 9,    parameter fncd6fc = 9,    parameter vv6b7e6 = 9,    parameter ip5bf36 = 9,    parameter dmdf9b5 = 9,    parameter rtfcdab = "enable",    parameter pfe6d5f = "ECP5U",    parameter mt36aff = "CLK0",    parameter tjb57fc = "CE0",    parameter wlabfe6 = "RST0",    parameter vv5ff35 = "CLK0",    parameter cmff9af = "CE0",    parameter vvfcd78 = "RST0",    parameter vve6bc7 = "CLK0",    parameter hq35e3f = "CE0",    parameter jraf1fb = "RST0",    parameter os78fde = "CLK0",    parameter rtc7ef1 = "CE0",    parameter hq3f78e = "RST0",    parameter lqfbc73 = "CLK0",    parameter mede39a = "CE0",    parameter faf1cd0 = "RST0",    parameter tj8e683 = "CLK0",    parameter fa7341f = "CE0",    parameter sj9a0fb = "RST0",    parameter byd07dc = "CLK0",    parameter vk83ee3 = "CE0",    parameter mg1f71a = "RST0",    parameter fafb8d0 = "CLK0",    parameter shdc682 = "CE0",    parameter hbe3415 = "RST0",    parameter uk1a0ae = "CLK0",    parameter rgd0570 = "CE0",    parameter sw82b83 = "RST0",    parameter ou15c18 = "CLK0",    parameter sjae0c0 = "CE0",    parameter kd70604 = "RST0",    parameter ba83024 = "CLK0",    parameter oh18123 = "CE0",    parameter zkc091d = "RST0",    parameter xy48eb = "CLK0",    parameter gq2475b = "CE0",    parameter sj23ad9 = "RST0",    parameter kf1d6cd = "CLK0",    parameter tueb66d = "CE0",    parameter sh5b36a = "RST0",    parameter czd9b54 = "CLK0",    parameter fncdaa4 = "CE0",    parameter ww6d527 = "RST0",    parameter uv6a939 = "CLK0",    parameter en549cd = "CE0",    parameter qva4e6c = "RST0",    parameter rv27364 = "CLK0",    parameter yz39b26 = "CE0",    parameter thcd935 = "RST0",    parameter fa6c9af = "CLK0",    parameter ld64d7a = "CE0",    parameter cb26bd6 = "RST0",    parameter ls35eb5 = "CLK0",    parameter phaf5ab = "CE0",    parameter mr7ad5e = "RST0",    parameter wjd6af4 = "FALSE",    parameter jrb57a5 = "B",    parameter uxabd2e = "B",    parameter en5e975 = "OPA0",    parameter xwf4bad = "OPA1",    parameter hda5d6b = "A_SHIFT",    parameter uk2eb5e = "SHIFT",    parameter en75af1 = "DIRECT",    parameter jead78d = "A_SHIFT",    parameter vv6bc6b = "SHIFT",    parameter faf1afc = "SHIFT",    parameter mr5e35f = "DIRECT",    parameter qi8d7e3 = "NONE",    parameter fn6bf18 = "ENABLED",    parameter pf5f8c7 = "ENABLED",    parameter jpfc63f = "ENABLED",    parameter zxe31fe = "ENABLED")
  (input [jp7b35b-1:0] rtc7fb4, 
   input [czd9adf-1:0] jpf6992, 
   input [fncd6fc-1:0] ph325a8, 
   input [vv6b7e6-1:0] xlb51cb, 
   input [ip5bf36-1:0] ep39793, 
   input [dmdf9b5-1:0] czf2704, 
   input kqe095b, ba256c3, mr5b0d8, wjc3627,
   input hbd89ea, fp27ab1,
   input [23:0] meeac7e, irb1f88,
   input fn7e22c,
   input [8:0] ks88b3a, nr459d1,
   input [1:0] gd2ce8f,
   input       pu3a3e0,
   input       wwd1f03,
   input [3:0] ep8f818, goc447c, mee0ca2,
   output [23:0] rv32887, wy10fba,
   output czf7400,
   output [8:0] kf8017b, cobdc);
wire      wy153ac;
wire      gqa9d61;
wire [ 8:0] sh4eb08, uv75844, gqac225, xj61129, yz894f;
wire [ 8:0] uv44a7d, je253ed;
wire [23:0] hbc2efa;
wire [ 8:0] vv4fb5c, qg7dae6;
wire        gbed731, xj6b98d;
wire [ 8:0] ay5cc6f = rtc7fb4;
wire [ 8:0] gq31bc6 = ph325a8;
wire [ 8:0] uv6f189 = jpf6992;
wire [ 8:0] shc6261 = xlb51cb;
wire [ 8:0] ng89868 = ep39793;
wire [ 8:0] th61a18 = czf2704;
localparam  me68634 = (uk2eb5e == "ZERO")                   ? "PARALLEL" : uk2eb5e;
localparam  uvc684c = (hda5d6b == "ZERO")                   ? "PARALLEL" : hda5d6b;
localparam  tj9905 = (vv6bc6b == "ZERO")                   ? "PARALLEL" : vv6bc6b;
localparam  ba20bcf = (jead78d == "ZERO")                   ? "PARALLEL" : jead78d;
reg [jp7b35b - 1 : 0] rgcf453;
reg [czd9adf - 1 : 0] ead14dd;
reg [fncd6fc - 1 : 0] me5374d;
reg [vv6b7e6 - 1 : 0] rtdd347;
reg [ip5bf36 - 1 : 0] ne4d1fe;
reg [dmdf9b5 - 1 : 0] by47f90;
reg je3fc82;
reg xwfe412;
reg kdf2093;
reg gd9049d;
reg [23 : 0] ie824ed;
reg [23 : 0] sj12769;
reg xy93b4c;
reg [8 : 0] ou9da63;
reg [8 : 0] wjed318;
reg [1 : 0] tu698c5;
reg qg4c62a;
reg dm63150;
reg [3 : 0] qv18a82;
reg [3 : 0] lqc5414;
reg ls2a0a2;
reg hb50512;
reg [8 : 0] qi82897;
reg [8 : 0] zm144b8;
reg [8 : 0] fca25c3;
reg [8 : 0] gd12e1a;
reg [8 : 0] ie970d5;
reg [8 : 0] vkb86a8;
reg [8 : 0] qtc3542;
reg [23 : 0] co1aa15;
reg [8 : 0] hod50a9;
reg [8 : 0] ria854b;
reg fa42a5b;
reg ou152da;
reg [8 : 0] uka96d1;
reg [8 : 0] en4b689;
reg [8 : 0] qt5b44d;
reg [8 : 0] lqda26c;
reg [8 : 0] wwd1362;
reg [8 : 0] hq89b11;
reg [2047:0] ec1a3c3;
wire [39:0] sud1e18;
localparam yz8f0c0 = 40,su78605 = 32'hfdffd48b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
assign      hbc2efa = 24'b0;   assign      wy153ac = 1'b1;   assign      gqa9d61 = 1'b0;
   assign      uv44a7d = (en5e975 == "OPA0") ? zm144b8 : uka96d1;   assign      je253ed = (xwf4bad == "OPA1") ? gd12e1a : en4b689;   assign      kf8017b = (xwf4bad == "OPA1") ? ie970d5 : ria854b;
   assign   cze82ca = (en5e975 == "A_SHIFT")? kdf2093:1'b0;   assign     czf7400 = fa42a5b | ou152da;
    defparam ieac656.SYMMETRY_MODE = en75af1 ;    defparam ieac656.FB_MUX = "DISABLED" ;     defparam ieac656.SOURCEB_MODE = me68634 ;    defparam ieac656.SOURCEA_MODE = uvc684c ;    defparam ieac656.CAS_MATCH_REG = "FALSE" ;     defparam ieac656.RESETMODE = "ASYNC" ;     defparam ieac656.GSR = "ENABLED" ;    defparam ieac656.REG_OPPRE_RST = qva4e6c;    defparam ieac656.REG_OPPRE_CE = en549cd;    defparam ieac656.REG_OPPRE_CLK = uv6a939 ;    defparam ieac656.REG_INPUTC_RST = sw82b83 ;    defparam ieac656.REG_INPUTC_CE = rgd0570;    defparam ieac656.REG_INPUTC_CLK = uk1a0ae;    defparam ieac656.REG_INPUTB_RST = vvfcd78;    defparam ieac656.REG_INPUTB_CE = cmff9af;    defparam ieac656.REG_INPUTB_CLK = vv5ff35 ;    defparam ieac656.REG_INPUTA_RST = wlabfe6;    defparam ieac656.REG_INPUTA_CE = tjb57fc ;    defparam ieac656.REG_INPUTA_CLK = mt36aff ;    defparam ieac656.HIGHSPEED_CLK = qi8d7e3;    defparam ieac656.CLK0_DIV = fn6bf18;    defparam ieac656.CLK1_DIV = pf5f8c7;    defparam ieac656.CLK2_DIV = jpfc63f;    defparam ieac656.CLK3_DIV = zxe31fe;    PRADD9A ieac656 (        .PA8(ay5cc6f[8]), .PA7(ay5cc6f[7]), .PA6(ay5cc6f[6]), .PA5(ay5cc6f[5]), .PA4(ay5cc6f[4]), .PA3(ay5cc6f[3]), .PA2(ay5cc6f[2]), .PA1(ay5cc6f[1]), .PA0(ay5cc6f[0]),        .PB8(1'b0), .PB7(1'b0), .PB6(1'b0), .PB5(1'b0), .PB4(1'b0), .PB3(1'b0), .PB2(1'b0), .PB1(1'b0), .PB0(1'b0),        .C8(ng89868[8]), .C7(ng89868[7]), .C6(ng89868[6]), .C5(ng89868[5]), .C4(ng89868[4]), .C3(ng89868[3]), .C2(ng89868[2]), .C1(ng89868[1]), .C0(ng89868[0]),        .SOURCEA(hbd89ea), .OPPRE(gd2ce8f[0]),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA8(ks88b3a[8]), .SRIA7(ks88b3a[7]), .SRIA6(ks88b3a[6]), .SRIA5(ks88b3a[5]), .SRIA4(ks88b3a[4]), .SRIA3(ks88b3a[3]), .SRIA2(ks88b3a[2]), .SRIA1(ks88b3a[1]), .SRIA0(ks88b3a[0]),        .SRIB8(gqac225[8]), .SRIB7(gqac225[7]), .SRIB6(gqac225[6]), .SRIB5(gqac225[5]), .SRIB4(gqac225[4]), .SRIB3(gqac225[3]), .SRIB2(gqac225[2]), .SRIB1(gqac225[1]), .SRIB0(gqac225[0]),        .SROA8(sh4eb08[8]), .SROA7(sh4eb08[7]), .SROA6(sh4eb08[6]), .SROA5(sh4eb08[5]), .SROA4(sh4eb08[4]), .SROA3(sh4eb08[3]), .SROA2(sh4eb08[2]), .SROA1(sh4eb08[1]), .SROA0(sh4eb08[0]),        .SROB8(cobdc[8]), .SROB7(cobdc[7]), .SROB6(cobdc[6]), .SROB5(cobdc[5]), .SROB4(cobdc[4]), .SROB3(cobdc[3]), .SROB2(cobdc[2]), .SROB1(cobdc[1]), .SROB0(cobdc[0]),        .PO8(uv75844[8]), .PO7(uv75844[7]), .PO6(uv75844[6]), .PO5(uv75844[5]), .PO4(uv75844[4]), .PO3(uv75844[3]), .PO2(uv75844[2]), .PO1(uv75844[1]), .PO0(uv75844[0])    );
    defparam uv70ec9.SYMMETRY_MODE = mr5e35f;    defparam uv70ec9.FB_MUX = faf1afc ;    defparam uv70ec9.SOURCEB_MODE = tj9905 ;    defparam uv70ec9.SOURCEA_MODE =  ba20bcf;    defparam uv70ec9.CAS_MATCH_REG = wjd6af4 ;    defparam uv70ec9.RESETMODE = "ASYNC" ;    defparam uv70ec9.GSR = "ENABLED" ;    defparam uv70ec9.REG_OPPRE_RST = thcd935;    defparam uv70ec9.REG_OPPRE_CE = yz39b26;    defparam uv70ec9.REG_OPPRE_CLK = rv27364 ;    defparam uv70ec9.REG_INPUTC_RST = kd70604 ;    defparam uv70ec9.REG_INPUTC_CE = sjae0c0;    defparam uv70ec9.REG_INPUTC_CLK = ou15c18;    defparam uv70ec9.REG_INPUTB_RST = sj9a0fb;    defparam uv70ec9.REG_INPUTB_CE = fa7341f;    defparam uv70ec9.REG_INPUTB_CLK = tj8e683 ;    defparam uv70ec9.REG_INPUTA_RST = faf1cd0;    defparam uv70ec9.REG_INPUTA_CE = mede39a ;    defparam uv70ec9.REG_INPUTA_CLK = lqfbc73 ;    defparam uv70ec9.HIGHSPEED_CLK = qi8d7e3;    defparam uv70ec9.CLK0_DIV = fn6bf18;    defparam uv70ec9.CLK1_DIV = pf5f8c7;    defparam uv70ec9.CLK2_DIV = jpfc63f;    defparam uv70ec9.CLK3_DIV = zxe31fe;    PRADD9A uv70ec9 (        .PA8(gq31bc6[8]), .PA7(gq31bc6[7]), .PA6(gq31bc6[6]), .PA5(gq31bc6[5]), .PA4(gq31bc6[4]), .PA3(gq31bc6[3]), .PA2(gq31bc6[2]), .PA1(gq31bc6[1]), .PA0(gq31bc6[0]),        .PB8(1'b0), .PB7(1'b0), .PB6(1'b0), .PB5(1'b0), .PB4(1'b0), .PB3(1'b0), .PB2(1'b0), .PB1(1'b0), .PB0(1'b0),        .C8(th61a18[8]), .C7(th61a18[7]), .C6(th61a18[6]), .C5(th61a18[5]), .C4(th61a18[4]), .C3(th61a18[3]), .C2(th61a18[2]), .C1(th61a18[1]), .C0(th61a18[0]),
        .SOURCEA(fp27ab1), .OPPRE(gd2ce8f[1]),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA8(sh4eb08[8]), .SRIA7(sh4eb08[7]), .SRIA6(sh4eb08[6]), .SRIA5(sh4eb08[5]), .SRIA4(sh4eb08[4]), .SRIA3(sh4eb08[3]), .SRIA2(sh4eb08[2]), .SRIA1(sh4eb08[1]), .SRIA0(sh4eb08[0]),        .SRIB8(nr459d1[8]), .SRIB7(nr459d1[7]), .SRIB6(nr459d1[6]), .SRIB5(nr459d1[5]), .SRIB4(nr459d1[4]), .SRIB3(nr459d1[3]), .SRIB2(nr459d1[2]), .SRIB1(nr459d1[1]), .SRIB0(nr459d1[0]),        .SROA8(yz894f[8]), .SROA7(yz894f[7]), .SROA6(yz894f[6]), .SROA5(yz894f[5]), .SROA4(yz894f[4]), .SROA3(yz894f[3]), .SROA2(yz894f[2]), .SROA1(yz894f[1]), .SROA0(yz894f[0]),        .SROB8(gqac225[8]), .SROB7(gqac225[7]), .SROB6(gqac225[6]), .SROB5(gqac225[5]), .SROB4(gqac225[4]), .SROB3(gqac225[3]), .SROB2(gqac225[2]), .SROB1(gqac225[1]), .SROB0(gqac225[0]),        .PO8(xj61129[8]), .PO7(xj61129[7]), .PO6(xj61129[6]), .PO5(xj61129[5]), .PO4(xj61129[4]), .PO3(xj61129[3]), .PO2(xj61129[2]), .PO1(xj61129[1]), .PO0(xj61129[0])    );
    defparam rv38165.SOURCEB_MODE = (jrb57a5 == "B") ? "B_SHIFT" : (jrb57a5 == "C") ? "C_SHIFT" : "HIGHSPEED" ;    defparam rv38165.MULT_BYPASS = "DISABLED" ;    defparam rv38165.CAS_MATCH_REG = "FALSE" ;     defparam rv38165.RESETMODE = "ASYNC" ;    defparam rv38165.GSR = "ENABLED" ;    defparam rv38165.REG_OUTPUT_RST = "RST0" ;    defparam rv38165.REG_OUTPUT_CE = "CE0" ;    defparam rv38165.REG_OUTPUT_CLK = "NONE" ;     defparam rv38165.REG_PIPELINE_RST = sj23ad9 ;    defparam rv38165.REG_PIPELINE_CE = gq2475b ;    defparam rv38165.REG_PIPELINE_CLK = xy48eb ;    defparam rv38165.REG_INPUTC_RST = sw82b83 ;    defparam rv38165.REG_INPUTC_CE = rgd0570 ;    defparam rv38165.REG_INPUTC_CLK = uk1a0ae ;    defparam rv38165.REG_INPUTB_RST = hq3f78e;    defparam rv38165.REG_INPUTB_CE = rtc7ef1 ;    defparam rv38165.REG_INPUTB_CLK = os78fde ;    defparam rv38165.REG_INPUTA_RST = jraf1fb;    defparam rv38165.REG_INPUTA_CE =  hq35e3f;    defparam rv38165.REG_INPUTA_CLK = vve6bc7 ;    defparam rv38165.HIGHSPEED_CLK = qi8d7e3;    defparam rv38165.CLK0_DIV = fn6bf18;    defparam rv38165.CLK1_DIV = pf5f8c7;    defparam rv38165.CLK2_DIV = jpfc63f;    defparam rv38165.CLK3_DIV = zxe31fe;    MULT9X9D rv38165 (        .A8(uv75844[8]), .A7(uv75844[7]), .A6(uv75844[6]), .A5(uv75844[5]), .A4(uv75844[4]), .A3(uv75844[3]), .A2(uv75844[2]), .A1(uv75844[1]), .A0(uv75844[0]),        .B8(uv6f189[8]), .B7(uv6f189[7]), .B6(uv6f189[6]), .B5(uv6f189[5]), .B4(uv6f189[4]), .B3(uv6f189[3]), .B2(uv6f189[2]), .B1(uv6f189[1]), .B0(uv6f189[0]),        .C8(ng89868[8]), .C7(ng89868[7]), .C6(ng89868[6]), .C5(ng89868[5]), .C4(ng89868[4]), .C3(ng89868[3]), .C2(ng89868[2]), .C1(ng89868[1]), .C0(ng89868[0]),        .SIGNEDA(kqe095b), .SIGNEDB(ba256c3), .SOURCEA(cze82ca), .SOURCEB(1'b0),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA8(ks88b3a[8]), .SRIA7(ks88b3a[7]), .SRIA6(ks88b3a[6]), .SRIA5(ks88b3a[5]), .SRIA4(ks88b3a[4]), .SRIA3(ks88b3a[3]), .SRIA2(ks88b3a[2]), .SRIA1(ks88b3a[1]), .SRIA0(ks88b3a[0]),
        .SRIB8(1'b0), .SRIB7(1'b0), .SRIB6(1'b0), .SRIB5(1'b0), .SRIB4(1'b0), .SRIB3(1'b0), .SRIB2(1'b0), .SRIB1(1'b0), .SRIB0(1'b0),        .SROA8(vv4fb5c[8]), .SROA7(vv4fb5c[7]), .SROA6(vv4fb5c[6]), .SROA5(vv4fb5c[5]), .SROA4(vv4fb5c[4]), .SROA3(vv4fb5c[3]), .SROA2(vv4fb5c[2]), .SROA1(vv4fb5c[1]), .SROA0(vv4fb5c[0]),        .SROB8(), .SROB7(), .SROB6(), .SROB5(), .SROB4(), .SROB3(), .SROB2(), .SROB1(), .SROB0(),        .ROA8(thddd9d), .ROA7(jceecee), .ROA6(tu76773), .ROA5(ymb3b9b), .ROA4(ie9dcd8),        .ROA3(zkee6c0), .ROA2(ne73602), .ROA1(fp9b013), .ROA0(dzd809e),        .ROB8(psc04f7), .ROB7(sj27ba), .ROB6(vx13dd5), .ROB5(bn9eeaf), .ROB4(alf757f),        .ROB3(fpbabfd), .ROB2(rgd5fee), .ROB1(rvaff72), .ROB0(gb7fb97),        .ROC8(), .ROC7(), .ROC6(), .ROC5(), .ROC4(), .ROC3(), .ROC2(), .ROC1(), .ROC0(),        .P17(alfdcbc), .P16(hoee5e5), .P15(yk72f2a),        .P14(ie97950), .P13(ymbca81), .P12(qge5409),        .P11(tw2a049), .P10(th5024a), .P9(lf81257),        .P8(nt92be), .P7(ea495f6), .P6(nr4afb0),        .P5(fa57d86), .P4(cbbec33), .P3(vvf619c),        .P2(rvb0ce7), .P1(je8673f), .P0(an339fb),        .SIGNEDP(gbed731));    defparam gbe7ee2.SOURCEB_MODE = (uxabd2e == "B") ? "B_SHIFT" : (uxabd2e == "C") ? "C_SHIFT" : "HIGHSPEED" ;    defparam gbe7ee2.MULT_BYPASS = "DISABLED" ;    defparam gbe7ee2.CAS_MATCH_REG = "FALSE" ;     defparam gbe7ee2.RESETMODE = "ASYNC" ;    defparam gbe7ee2.GSR = "ENABLED" ;    defparam gbe7ee2.REG_OUTPUT_RST = "RST0" ;    defparam gbe7ee2.REG_OUTPUT_CE = "CE0" ;    defparam gbe7ee2.REG_OUTPUT_CLK = "NONE" ;     defparam gbe7ee2.REG_PIPELINE_RST = sh5b36a ;    defparam gbe7ee2.REG_PIPELINE_CE = tueb66d ;    defparam gbe7ee2.REG_PIPELINE_CLK = kf1d6cd ;    defparam gbe7ee2.REG_INPUTC_RST = kd70604 ;    defparam gbe7ee2.REG_INPUTC_CE = sjae0c0 ;    defparam gbe7ee2.REG_INPUTC_CLK = ou15c18 ;    defparam gbe7ee2.REG_INPUTB_RST = hbe3415;    defparam gbe7ee2.REG_INPUTB_CE = shdc682 ;    defparam gbe7ee2.REG_INPUTB_CLK = fafb8d0 ;    defparam gbe7ee2.REG_INPUTA_RST = mg1f71a;    defparam gbe7ee2.REG_INPUTA_CE =  vk83ee3;    defparam gbe7ee2.REG_INPUTA_CLK = byd07dc ;    defparam gbe7ee2.HIGHSPEED_CLK = qi8d7e3;    defparam gbe7ee2.CLK0_DIV = fn6bf18;    defparam gbe7ee2.CLK1_DIV = pf5f8c7;    defparam gbe7ee2.CLK2_DIV = jpfc63f;    defparam gbe7ee2.CLK3_DIV = zxe31fe;    MULT9X9D gbe7ee2 (        .A8(xj61129[8]), .A7(xj61129[7]), .A6(xj61129[6]), .A5(xj61129[5]), .A4(xj61129[4]), .A3(xj61129[3]), .A2(xj61129[2]), .A1(xj61129[1]), .A0(xj61129[0]),        .B8(shc6261[8]), .B7(shc6261[7]), .B6(shc6261[6]), .B5(shc6261[5]), .B4(shc6261[4]), .B3(shc6261[3]), .B2(shc6261[2]), .B1(shc6261[1]), .B0(shc6261[0]),        .C8(th61a18[8]), .C7(th61a18[7]), .C6(th61a18[6]), .C5(th61a18[5]), .C4(th61a18[4]), .C3(th61a18[3]), .C2(th61a18[2]), .C1(th61a18[1]), .C0(th61a18[0]),        .SIGNEDA(mr5b0d8), .SIGNEDB(wjc3627), .SOURCEA(1'b0), .SOURCEB(1'b0),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA8(vv4fb5c[8]), .SRIA7(vv4fb5c[7]), .SRIA6(vv4fb5c[6]), .SRIA5(vv4fb5c[5]), .SRIA4(vv4fb5c[4]), .SRIA3(vv4fb5c[3]), .SRIA2(vv4fb5c[2]), .SRIA1(vv4fb5c[1]), .SRIA0(vv4fb5c[0]),
        .SRIB8(1'b0), .SRIB7(1'b0), .SRIB6(1'b0), .SRIB5(1'b0), .SRIB4(1'b0), .SRIB3(1'b0), .SRIB2(1'b0), .SRIB1(1'b0), .SRIB0(1'b0),        .SROA8(qg7dae6[8]), .SROA7(qg7dae6[7]), .SROA6(qg7dae6[6]), .SROA5(qg7dae6[5]), .SROA4(qg7dae6[4]), .SROA3(qg7dae6[3]), .SROA2(qg7dae6[2]), .SROA1(qg7dae6[1]), .SROA0(qg7dae6[0]),        .SROB8(), .SROB7(), .SROB6(), .SROB5(), .SROB4(), .SROB3(), .SROB2(), .SROB1(), .SROB0(),        .ROA8(tw93da1), .ROA7(lf9ed0b), .ROA6(dzf685f), .ROA5(yzb42fe), .ROA4(kfa17f4),        .ROA3(xybfa5), .ROA2(jp5fd2a), .ROA1(lqfe957), .ROA0(nef4aba),        .ROB8(fpa55d3), .ROB7(je2ae9f), .ROB6(tu574fb), .ROB5(hdba7da), .ROB4(mrd3ed7),        .ROB3(gd9f6bd), .ROB2(jcfb5ec), .ROB1(bydaf63), .ROB0(bld7b1b),        .ROC8(), .ROC7(), .ROC6(), .ROC5(), .ROC4(), .ROC3(), .ROC2(), .ROC1(), .ROC0(),        .P17(vkbd8df), .P16(vvec6fb), .P15(lq637df),        .P14(ba1befa), .P13(zkdf7d3), .P12(fafbe9a),        .P11(rgdf4d2), .P10(sufa692), .P9(wjd3491),        .P8(ep9a48c), .P7(vvd2464), .P6(uk92326),        .P5(ph91930), .P4(zm8c986), .P3(dz64c33),        .P2(qv2619e), .P1(pu30cf4), .P0(tw867a3),        .SIGNEDP(xj6b98d));
    defparam rv9e8dc.REG_OPCODE_1_RST = mr7ad5e ;    defparam rv9e8dc.REG_OPCODE_1_CE = phaf5ab;    defparam rv9e8dc.REG_OPCODE_1_CLK = ls35eb5;    defparam rv9e8dc.REG_OPCODE_0_RST = cb26bd6;    defparam rv9e8dc.REG_OPCODE_0_CE = ld64d7a;    defparam rv9e8dc.REG_OPCODE_0_CLK = fa6c9af;    defparam rv9e8dc.REG_INPUTCFB_RST = zkc091d ;    defparam rv9e8dc.REG_INPUTCFB_CE = oh18123 ;    defparam rv9e8dc.REG_INPUTCFB_CLK = ba83024 ;    defparam rv9e8dc.REG_OUTPUT_RST = ww6d527 ;    defparam rv9e8dc.REG_OUTPUT_CE = fncdaa4 ;    defparam rv9e8dc.REG_OUTPUT_CLK = czd9b54 ;    defparam rv9e8dc.RESETMODE = "ASYNC" ;    defparam rv9e8dc.GSR = "ENABLED" ;    defparam rv9e8dc.CLK0_DIV = fn6bf18;    defparam rv9e8dc.CLK1_DIV = pf5f8c7;    defparam rv9e8dc.CLK2_DIV = jpfc63f;    defparam rv9e8dc.CLK3_DIV = zxe31fe;    ALU24B rv9e8dc (        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SIGNEDIA(gbed731), .SIGNEDIB(xj6b98d),        .CFB23(meeac7e[23]), .CFB22(meeac7e[22]), .CFB21(meeac7e[21]), .CFB20(meeac7e[20]),        .CFB19(meeac7e[19]), .CFB18(meeac7e[18]), .CFB17(meeac7e[17]), .CFB16(meeac7e[16]), .CFB15(meeac7e[15]),        .CFB14(meeac7e[14]), .CFB13(meeac7e[13]), .CFB12(meeac7e[12]), .CFB11(meeac7e[11]), .CFB10(meeac7e[10]),        .CFB9(meeac7e[9]), .CFB8(meeac7e[8]), .CFB7(meeac7e[7]), .CFB6(meeac7e[6]), .CFB5(meeac7e[5]),        .CFB4(meeac7e[4]), .CFB3(meeac7e[3]), .CFB2(meeac7e[2]), .CFB1(meeac7e[1]), .CFB0(meeac7e[0]),        .MA17(alfdcbc), .MA16(hoee5e5), .MA15(yk72f2a),        .MA14(ie97950), .MA13(ymbca81), .MA12(qge5409),        .MA11(tw2a049), .MA10(th5024a), .MA9(lf81257),        .MA8(nt92be), .MA7(ea495f6), .MA6(nr4afb0),        .MA5(fa57d86), .MA4(cbbec33), .MA3(vvf619c),        .MA2(rvb0ce7), .MA1(je8673f), .MA0(an339fb),        .MB17(vkbd8df), .MB16(vvec6fb), .MB15(lq637df),        .MB14(ba1befa), .MB13(zkdf7d3), .MB12(fafbe9a),        .MB11(rgdf4d2), .MB10(sufa692), .MB9(wjd3491),        .MB8(ep9a48c), .MB7(vvd2464), .MB6(uk92326),        .MB5(ph91930), .MB4(zm8c986), .MB3(dz64c33),        .MB2(qv2619e), .MB1(pu30cf4), .MB0(tw867a3),        .CIN23(irb1f88[23]), .CIN22(irb1f88[22]), .CIN21(irb1f88[21]), .CIN20(irb1f88[20]),        .CIN19(irb1f88[19]), .CIN18(irb1f88[18]), .CIN17(irb1f88[17]), .CIN16(irb1f88[16]), .CIN15(irb1f88[15]),        .CIN14(irb1f88[14]), .CIN13(irb1f88[13]), .CIN12(irb1f88[12]), .CIN11(irb1f88[11]), .CIN10(irb1f88[10]),        .CIN9(irb1f88[9]), .CIN8(irb1f88[8]), .CIN7(irb1f88[7]), .CIN6(irb1f88[6]), .CIN5(irb1f88[5]),        .CIN4(irb1f88[4]), .CIN3(irb1f88[3]), .CIN2(irb1f88[2]), .CIN1(irb1f88[1]), .CIN0(irb1f88[0]),        .OPADDNSUB(pu3a3e0), .OPCINSEL(wwd1f03),        .R23(rv32887[23]), .R22(rv32887[22]), .R21(rv32887[21]), .R20(rv32887[20]),        .R19(rv32887[19]), .R18(rv32887[18]), .R17(rv32887[17]), .R16(rv32887[16]), .R15(rv32887[15]),        .R14(rv32887[14]), .R13(rv32887[13]), .R12(rv32887[12]), .R11(rv32887[11]), .R10(rv32887[10]),        .R9(rv32887[9]), .R8(rv32887[8]), .R7(rv32887[7]), .R6(rv32887[6]), .R5(rv32887[5]),        .R4(rv32887[4]), .R3(rv32887[3]), .R2(rv32887[2]), .R1(rv32887[1]), .R0(rv32887[0]),        .CO23(wy10fba[23]), .CO22(wy10fba[22]), .CO21(wy10fba[21]), .CO20(wy10fba[20]),        .CO19(wy10fba[19]), .CO18(wy10fba[18]), .CO17(wy10fba[17]), .CO16(wy10fba[16]), .CO15(wy10fba[15]),        .CO14(wy10fba[14]), .CO13(wy10fba[13]), .CO12(wy10fba[12]), .CO11(wy10fba[11]), .CO10(wy10fba[10]),        .CO9(wy10fba[9]), .CO8(wy10fba[8]), .CO7(wy10fba[7]), .CO6(wy10fba[6]), .CO5(wy10fba[5]),        .CO4(wy10fba[4]), .CO3(wy10fba[3]), .CO2(wy10fba[2]), .CO1(wy10fba[1]), .CO0(wy10fba[0]));
always@* begin rgcf453<={rtc7fb4>>1,sud1e18[0]};ead14dd<={jpf6992>>1,sud1e18[1]};me5374d<={ph325a8>>1,sud1e18[2]};rtdd347<={xlb51cb>>1,sud1e18[3]};ne4d1fe<={ep39793>>1,sud1e18[4]};by47f90<={czf2704>>1,sud1e18[5]};je3fc82<=sud1e18[6];xwfe412<=sud1e18[7];kdf2093<=sud1e18[8];gd9049d<=sud1e18[9];ie824ed<={meeac7e>>1,sud1e18[10]};sj12769<={irb1f88>>1,sud1e18[11]};xy93b4c<=sud1e18[12];ou9da63<={ks88b3a>>1,sud1e18[13]};wjed318<={nr459d1>>1,sud1e18[14]};tu698c5<={gd2ce8f>>1,sud1e18[15]};qg4c62a<=sud1e18[16];dm63150<=sud1e18[17];qv18a82<={ep8f818>>1,sud1e18[18]};lqc5414<={goc447c>>1,sud1e18[19]};ls2a0a2<=sud1e18[20];hb50512<=sud1e18[21];qi82897<={sh4eb08>>1,sud1e18[22]};zm144b8<={uv75844>>1,sud1e18[23]};fca25c3<={gqac225>>1,sud1e18[24]};gd12e1a<={xj61129>>1,sud1e18[25]};ie970d5<={yz894f>>1,sud1e18[26]};vkb86a8<={uv44a7d>>1,sud1e18[27]};qtc3542<={je253ed>>1,sud1e18[28]};co1aa15<={hbc2efa>>1,sud1e18[29]};hod50a9<={vv4fb5c>>1,sud1e18[30]};ria854b<={qg7dae6>>1,sud1e18[31]};fa42a5b<=sud1e18[32];ou152da<=sud1e18[33];uka96d1<={ay5cc6f>>1,sud1e18[34]};en4b689<={gq31bc6>>1,sud1e18[35]};qt5b44d<={uv6f189>>1,sud1e18[36]};lqda26c<={shc6261>>1,sud1e18[37]};wwd1362<={ng89868>>1,sud1e18[38]};hq89b11<={th61a18>>1,sud1e18[39]};end
always@* begin ec1a3c3[2047]<=jpf6992[0];ec1a3c3[2046]<=ph325a8[0];ec1a3c3[2044]<=xlb51cb[0];ec1a3c3[2040]<=ep39793[0];ec1a3c3[2032]<=czf2704[0];ec1a3c3[2017]<=kqe095b;ec1a3c3[1987]<=ba256c3;ec1a3c3[1927]<=hbd89ea;ec1a3c3[1865]<=pu3a3e0;ec1a3c3[1859]<=xj6b98d;ec1a3c3[1806]<=fp27ab1;ec1a3c3[1682]<=wwd1f03;ec1a3c3[1671]<=ay5cc6f[0];ec1a3c3[1565]<=meeac7e[0];ec1a3c3[1488]<=qg7dae6[0];ec1a3c3[1326]<=yz894f[0];ec1a3c3[1317]<=ep8f818[0];ec1a3c3[1295]<=gq31bc6[0];ec1a3c3[1210]<=je253ed[0];ec1a3c3[1189]<=uv75844[0];ec1a3c3[1172]<=wy153ac;ec1a3c3[1087]<=shc6261[0];ec1a3c3[1082]<=irb1f88[0];ec1a3c3[1023]<=rtc7fb4[0];ec1a3c3[932]<=gd2ce8f[0];ec1a3c3[929]<=gbed731;ec1a3c3[744]<=vv4fb5c[0];ec1a3c3[663]<=xj61129[0];ec1a3c3[605]<=uv44a7d[0];ec1a3c3[594]<=sh4eb08[0];ec1a3c3[586]<=goc447c[0];ec1a3c3[543]<=uv6f189[0];ec1a3c3[466]<=nr459d1[0];ec1a3c3[372]<=hbc2efa[0];ec1a3c3[331]<=gqac225[0];ec1a3c3[297]<=gqa9d61;ec1a3c3[252]<=th61a18[0];ec1a3c3[233]<=ks88b3a[0];ec1a3c3[126]<=ng89868[0];ec1a3c3[116]<=fn7e22c;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module cm56af6_Scaler #(
    parameter jp7b35b = 18,    parameter czd9adf = 18,    parameter fncd6fc = 18,    parameter vv6b7e6 = 18,    parameter ip5bf36 = 18,    parameter dmdf9b5 = 18,    parameter rtfcdab = "enable",    parameter pfe6d5f = "ECP5U",    parameter mt36aff = "CLK0",    parameter tjb57fc = "CE0",    parameter wlabfe6 = "RST0",    parameter vv5ff35 = "CLK0",    parameter cmff9af = "CE0",    parameter vvfcd78 = "RST0",    parameter vve6bc7 = "CLK0",    parameter hq35e3f = "CE0",    parameter jraf1fb = "RST0",    parameter os78fde = "CLK0",    parameter rtc7ef1 = "CE0",    parameter hq3f78e = "RST0",    parameter lqfbc73 = "CLK0",    parameter mede39a = "CE0",    parameter faf1cd0 = "RST0",    parameter tj8e683 = "CLK0",    parameter fa7341f = "CE0",    parameter sj9a0fb = "RST0",    parameter byd07dc = "CLK0",    parameter vk83ee3 = "CE0",    parameter mg1f71a = "RST0",    parameter fafb8d0 = "CLK0",    parameter shdc682 = "CE0",    parameter hbe3415 = "RST0",    parameter uk1a0ae = "CLK0",    parameter rgd0570 = "CE0",    parameter sw82b83 = "RST0",    parameter ou15c18 = "CLK0",    parameter sjae0c0 = "CE0",    parameter kd70604 = "RST0",    parameter ba83024 = "CLK0",    parameter oh18123 = "CE0",    parameter zkc091d = "RST0",    parameter xy48eb = "CLK0",    parameter gq2475b = "CE0",    parameter sj23ad9 = "RST0",    parameter kf1d6cd = "CLK0",    parameter tueb66d = "CE0",    parameter sh5b36a = "RST0",    parameter czd9b54 = "CLK0",    parameter fncdaa4 = "CE0",    parameter ww6d527 = "RST0",    parameter uv6a939 = "CLK0",    parameter en549cd = "CE0",    parameter qva4e6c = "RST0",    parameter rv27364 = "CLK0",    parameter yz39b26 = "CE0",    parameter thcd935 = "RST0",    parameter fa6c9af = "CLK0",    parameter ld64d7a = "CE0",    parameter cb26bd6 = "RST0",    parameter ls35eb5 = "CLK0",    parameter phaf5ab = "CE0",    parameter mr7ad5e = "RST0",    parameter wjd6af4 = "FALSE",    parameter jrb57a5 = "B",    parameter uxabd2e = "B",    parameter en5e975 = "OPA0",    parameter xwf4bad = "OPA1",    parameter hda5d6b = "A_SHIFT",    parameter uk2eb5e = "SHIFT",    parameter en75af1 = "DIRECT",    parameter jead78d = "A_SHIFT",    parameter vv6bc6b = "SHIFT",    parameter faf1afc = "SHIFT",    parameter mr5e35f = "DIRECT",    parameter qi8d7e3 = "NONE",    parameter fn6bf18 = "ENABLED",    parameter pf5f8c7 = "ENABLED",    parameter jpfc63f = "ENABLED",    parameter zxe31fe = "ENABLED")
  (input [jp7b35b-1:0] rtc7fb4, 
   input [czd9adf-1:0] jpf6992, 
   input [fncd6fc-1:0] ph325a8, 
   input [vv6b7e6-1:0] xlb51cb, 
   input [ip5bf36-1:0] ep39793, 
   input [dmdf9b5-1:0] czf2704, 
   input kqe095b, ba256c3, mr5b0d8, wjc3627,
   input hbd89ea, fp27ab1,
   input [53:0] meeac7e, irb1f88,
   input fn7e22c,
   input [17:0] ks88b3a, nr459d1,
   input [1:0] ipc32dd, tj196ed,
   input [2:0] mecb76f,
   input [1:0] gd2ce8f,
   input [3:0] ipede6e,
   input [3:0] ep8f818, goc447c, mee0ca2,
   output [53:0] rv32887, wy10fba,
   output czf7400,
   output [17:0] kf8017b, cobdc);
wire      wy153ac;
wire      gqa9d61;
wire [17:0] sh4eb08, uv75844, gqac225, xj61129, yz894f;
wire [17:0] uv44a7d, je253ed;
wire [53:0] hbc2efa;
wire [17:0] vv4fb5c, qg7dae6;
wire [17:0] ay5cc6f = rtc7fb4;
wire [17:0] gq31bc6 = ph325a8;
wire [17:0] uv6f189 = jpf6992;
wire [17:0] shc6261 = xlb51cb;
wire [17:0] ng89868 = ep39793;
wire [17:0] th61a18 = czf2704;
localparam  me68634 = (uk2eb5e == "ZERO")                   ? "PARALLEL" : uk2eb5e;
localparam  uvc684c = (hda5d6b == "ZERO")                   ? "PARALLEL" : hda5d6b;
localparam  tj9905 = (vv6bc6b == "ZERO")                   ? "PARALLEL" : vv6bc6b;
localparam  ba20bcf = (jead78d == "ZERO")                   ? "PARALLEL" : jead78d;
reg [jp7b35b - 1 : 0] rgcf453;
reg [czd9adf - 1 : 0] ead14dd;
reg [fncd6fc - 1 : 0] me5374d;
reg [vv6b7e6 - 1 : 0] rtdd347;
reg [ip5bf36 - 1 : 0] ne4d1fe;
reg [dmdf9b5 - 1 : 0] by47f90;
reg je3fc82;
reg xwfe412;
reg kdf2093;
reg gd9049d;
reg [53 : 0] ie824ed;
reg [53 : 0] sj12769;
reg xy93b4c;
reg [17 : 0] ou9da63;
reg [17 : 0] wjed318;
reg [1 : 0] ec97e3c;
reg [1 : 0] vxbf1e1;
reg [2 : 0] uvf8f0f;
reg [1 : 0] tu698c5;
reg [3 : 0] cb3c3ee;
reg [3 : 0] qv18a82;
reg [3 : 0] lqc5414;
reg ls2a0a2;
reg hb50512;
reg [17 : 0] qi82897;
reg [17 : 0] zm144b8;
reg [17 : 0] fca25c3;
reg [17 : 0] gd12e1a;
reg [17 : 0] ie970d5;
reg [17 : 0] vkb86a8;
reg [17 : 0] qtc3542;
reg [53 : 0] co1aa15;
reg [17 : 0] hod50a9;
reg [17 : 0] ria854b;
reg [17 : 0] uka96d1;
reg [17 : 0] en4b689;
reg [17 : 0] qt5b44d;
reg [17 : 0] lqda26c;
reg [17 : 0] wwd1362;
reg [17 : 0] hq89b11;
reg [2047:0] ec1a3c3;
wire [39:0] sud1e18;
localparam yz8f0c0 = 40,su78605 = 32'hfdffd30b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
   assign      hbc2efa = 54'b0;   assign      wy153ac = 1'b1;   assign      gqa9d61 = 1'b0;
   assign      uv44a7d = (en5e975 == "OPA0") ? zm144b8 : uka96d1;   assign      je253ed = (xwf4bad == "OPA1") ? gd12e1a : en4b689;   assign      kf8017b = (xwf4bad == "OPA1") ? ie970d5 : ria854b;
assign   cze82ca = (en5e975 == "A_SHIFT")? kdf2093:1'b0;   defparam ieac656.SYMMETRY_MODE = en75af1 ;    defparam ieac656.FB_MUX = "DISABLED" ;     defparam ieac656.SOURCEB_MODE = me68634 ;    defparam ieac656.SOURCEA_MODE = uvc684c ;    defparam ieac656.CAS_MATCH_REG = "FALSE" ;     defparam ieac656.RESETMODE = "ASYNC" ;     defparam ieac656.GSR = "ENABLED" ;    defparam ieac656.REG_OPPRE_RST = qva4e6c;    defparam ieac656.REG_OPPRE_CE = en549cd;    defparam ieac656.REG_OPPRE_CLK = uv6a939 ;    defparam ieac656.REG_INPUTC_RST = sw82b83 ;    defparam ieac656.REG_INPUTC_CE = rgd0570;    defparam ieac656.REG_INPUTC_CLK = uk1a0ae;    defparam ieac656.REG_INPUTB_RST = vvfcd78;    defparam ieac656.REG_INPUTB_CE = cmff9af;    defparam ieac656.REG_INPUTB_CLK = vv5ff35 ;    defparam ieac656.REG_INPUTA_RST = wlabfe6;    defparam ieac656.REG_INPUTA_CE = tjb57fc ;    defparam ieac656.REG_INPUTA_CLK = mt36aff ;    defparam ieac656.HIGHSPEED_CLK = qi8d7e3;    defparam ieac656.CLK0_DIV = fn6bf18;    defparam ieac656.CLK1_DIV = pf5f8c7;    defparam ieac656.CLK2_DIV = jpfc63f;    defparam ieac656.CLK3_DIV = zxe31fe;    PRADD18A ieac656 (.PA17(ay5cc6f[17]), .PA16(ay5cc6f[16]), .PA15(ay5cc6f[15]), .PA14(ay5cc6f[14]),        .PA13(ay5cc6f[13]), .PA12(ay5cc6f[12]), .PA11(ay5cc6f[11]), .PA10(ay5cc6f[10]), .PA9(ay5cc6f[9]),        .PA8(ay5cc6f[8]), .PA7(ay5cc6f[7]), .PA6(ay5cc6f[6]), .PA5(ay5cc6f[5]), .PA4(ay5cc6f[4]), .PA3(ay5cc6f[3]),        .PA2(ay5cc6f[2]), .PA1(ay5cc6f[1]), .PA0(ay5cc6f[0]),        .PB17(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[17]), .PB16(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[16]),        .PB15(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[15]), .PB14(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[14]),        .PB13(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[13]), .PB12(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[12]),        .PB11(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[11]), .PB10(uk2eb5e=="ZERO" ? 1'b0 : uv6f189[10]),        .PB9 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[9 ]), .PB8 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[8 ]),        .PB7 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[7 ]), .PB6 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[6 ]),        .PB5 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[5 ]), .PB4 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[4 ]),        .PB3 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[3 ]), .PB2 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[2 ]),        .PB1 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[1 ]), .PB0 (uk2eb5e=="ZERO" ? 1'b0 : uv6f189[0 ]),        .C17(ng89868[17]), .C16(ng89868[16]), .C15(ng89868[15]), .C14(ng89868[14]),        .C13(ng89868[13]), .C12(ng89868[12]), .C11(ng89868[11]), .C10(ng89868[10]), .C9(ng89868[9]),        .C8(ng89868[8]), .C7(ng89868[7]), .C6(ng89868[6]), .C5(ng89868[5]), .C4(ng89868[4]), .C3(ng89868[3]),        .C2(ng89868[2]), .C1(ng89868[1]), .C0(ng89868[0]),        .SOURCEA(hbd89ea),        .OPPRE(gd2ce8f[0]),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA17(ks88b3a[17]), .SRIA16(ks88b3a[16]), .SRIA15(ks88b3a[15]), .SRIA14(ks88b3a[14]),        .SRIA13(ks88b3a[13]), .SRIA12(ks88b3a[12]), .SRIA11(ks88b3a[11]), .SRIA10(ks88b3a[10]), .SRIA9(ks88b3a[9]),        .SRIA8(ks88b3a[8]), .SRIA7(ks88b3a[7]), .SRIA6(ks88b3a[6]), .SRIA5(ks88b3a[5]), .SRIA4(ks88b3a[4]),        .SRIA3(ks88b3a[3]), .SRIA2(ks88b3a[2]), .SRIA1(ks88b3a[1]), .SRIA0(ks88b3a[0]),        .SRIB17(gqac225[17]), .SRIB16(gqac225[16]), .SRIB15(gqac225[15]), .SRIB14(gqac225[14]),        .SRIB13(gqac225[13]), .SRIB12(gqac225[12]), .SRIB11(gqac225[11]), .SRIB10(gqac225[10]), .SRIB9(gqac225[9]),        .SRIB8(gqac225[8]), .SRIB7(gqac225[7]), .SRIB6(gqac225[6]), .SRIB5(gqac225[5]), .SRIB4(gqac225[4]),        .SRIB3(gqac225[3]), .SRIB2(gqac225[2]), .SRIB1(gqac225[1]), .SRIB0(gqac225[0]),        .SROA17(sh4eb08[17]), .SROA16(sh4eb08[16]), .SROA15(sh4eb08[15]), .SROA14(sh4eb08[14]),        .SROA13(sh4eb08[13]), .SROA12(sh4eb08[12]), .SROA11(sh4eb08[11]), .SROA10(sh4eb08[10]), .SROA9(sh4eb08[9]),        .SROA8(sh4eb08[8]), .SROA7(sh4eb08[7]), .SROA6(sh4eb08[6]), .SROA5(sh4eb08[5]), .SROA4(sh4eb08[4]),        .SROA3(sh4eb08[3]), .SROA2(sh4eb08[2]), .SROA1(sh4eb08[1]), .SROA0(sh4eb08[0]),        .SROB17(cobdc[17]), .SROB16(cobdc[16]), .SROB15(cobdc[15]), .SROB14(cobdc[14]),        .SROB13(cobdc[13]), .SROB12(cobdc[12]), .SROB11(cobdc[11]), .SROB10(cobdc[10]), .SROB9(cobdc[9]),        .SROB8(cobdc[8]), .SROB7(cobdc[7]), .SROB6(cobdc[6]), .SROB5(cobdc[5]), .SROB4(cobdc[4]),        .SROB3(cobdc[3]), .SROB2(cobdc[2]), .SROB1(cobdc[1]), .SROB0(cobdc[0]),        .PO17(uv75844[17]), .PO16(uv75844[16]), .PO15(uv75844[15]), .PO14(uv75844[14]),        .PO13(uv75844[13]), .PO12(uv75844[12]), .PO11(uv75844[11]), .PO10(uv75844[10]), .PO9(uv75844[9]),        .PO8(uv75844[8]), .PO7(uv75844[7]), .PO6(uv75844[6]), .PO5(uv75844[5]), .PO4(uv75844[4]),        .PO3(uv75844[3]), .PO2(uv75844[2]), .PO1(uv75844[1]), .PO0(uv75844[0])    );
    defparam uv70ec9.SYMMETRY_MODE = mr5e35f;    defparam uv70ec9.FB_MUX = faf1afc ;    defparam uv70ec9.SOURCEB_MODE = tj9905 ;    defparam uv70ec9.SOURCEA_MODE =  ba20bcf;    defparam uv70ec9.CAS_MATCH_REG = wjd6af4 ;    defparam uv70ec9.RESETMODE = "ASYNC" ;    defparam uv70ec9.GSR = "ENABLED" ;    defparam uv70ec9.REG_OPPRE_RST = thcd935;    defparam uv70ec9.REG_OPPRE_CE = yz39b26;    defparam uv70ec9.REG_OPPRE_CLK = rv27364 ;    defparam uv70ec9.REG_INPUTC_RST = kd70604 ;    defparam uv70ec9.REG_INPUTC_CE = sjae0c0;    defparam uv70ec9.REG_INPUTC_CLK = ou15c18;    defparam uv70ec9.REG_INPUTB_RST = sj9a0fb;    defparam uv70ec9.REG_INPUTB_CE = fa7341f;    defparam uv70ec9.REG_INPUTB_CLK = tj8e683 ;    defparam uv70ec9.REG_INPUTA_RST = faf1cd0;    defparam uv70ec9.REG_INPUTA_CE = mede39a ;    defparam uv70ec9.REG_INPUTA_CLK = lqfbc73 ;    defparam uv70ec9.HIGHSPEED_CLK = qi8d7e3;    defparam uv70ec9.CLK0_DIV = fn6bf18;    defparam uv70ec9.CLK1_DIV = pf5f8c7;    defparam uv70ec9.CLK2_DIV = jpfc63f;    defparam uv70ec9.CLK3_DIV = zxe31fe;    PRADD18A uv70ec9 (.PA17(gq31bc6[17]), .PA16(gq31bc6[16]), .PA15(gq31bc6[15]), .PA14(gq31bc6[14]),        .PA13(gq31bc6[13]), .PA12(gq31bc6[12]), .PA11(gq31bc6[11]), .PA10(gq31bc6[10]), .PA9(gq31bc6[9]),        .PA8(gq31bc6[8]), .PA7(gq31bc6[7]), .PA6(gq31bc6[6]), .PA5(gq31bc6[5]), .PA4(gq31bc6[4]), .PA3(gq31bc6[3]),        .PA2(gq31bc6[2]), .PA1(gq31bc6[1]), .PA0(gq31bc6[0]),        .PB17(vv6bc6b=="ZERO" ? 1'b0 : shc6261[17]), .PB16(vv6bc6b=="ZERO" ? 1'b0 : shc6261[16]),        .PB15(vv6bc6b=="ZERO" ? 1'b0 : shc6261[15]), .PB14(vv6bc6b=="ZERO" ? 1'b0 : shc6261[14]),        .PB13(vv6bc6b=="ZERO" ? 1'b0 : shc6261[13]), .PB12(vv6bc6b=="ZERO" ? 1'b0 : shc6261[12]),        .PB11(vv6bc6b=="ZERO" ? 1'b0 : shc6261[11]), .PB10(vv6bc6b=="ZERO" ? 1'b0 : shc6261[10]),        .PB9 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[9 ]), .PB8 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[8 ]),        .PB7 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[7 ]), .PB6 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[6 ]),        .PB5 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[5 ]), .PB4 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[4 ]),        .PB3 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[3 ]), .PB2 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[2 ]),        .PB1 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[1 ]), .PB0 (vv6bc6b=="ZERO" ? 1'b0 : shc6261[0 ]),        .C17(th61a18[17]), .C16(th61a18[16]), .C15(th61a18[15]), .C14(th61a18[14]),        .C13(th61a18[13]), .C12(th61a18[12]), .C11(th61a18[11]), .C10(th61a18[10]), .C9(th61a18[9]),        .C8(th61a18[8]), .C7(th61a18[7]), .C6(th61a18[6]), .C5(th61a18[5]), .C4(th61a18[4]), .C3(th61a18[3]),        .C2(th61a18[2]), .C1(th61a18[1]), .C0(th61a18[0]),
        .SOURCEA(fp27ab1),        .OPPRE(gd2ce8f[1]),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA17(sh4eb08[17]), .SRIA16(sh4eb08[16]), .SRIA15(sh4eb08[15]), .SRIA14(sh4eb08[14]),        .SRIA13(sh4eb08[13]), .SRIA12(sh4eb08[12]), .SRIA11(sh4eb08[11]), .SRIA10(sh4eb08[10]), .SRIA9(sh4eb08[9]),        .SRIA8(sh4eb08[8]), .SRIA7(sh4eb08[7]), .SRIA6(sh4eb08[6]), .SRIA5(sh4eb08[5]), .SRIA4(sh4eb08[4]),        .SRIA3(sh4eb08[3]), .SRIA2(sh4eb08[2]), .SRIA1(sh4eb08[1]), .SRIA0(sh4eb08[0]),        .SRIB17(nr459d1[17]), .SRIB16(nr459d1[16]), .SRIB15(nr459d1[15]), .SRIB14(nr459d1[14]),        .SRIB13(nr459d1[13]), .SRIB12(nr459d1[12]), .SRIB11(nr459d1[11]), .SRIB10(nr459d1[10]), .SRIB9(nr459d1[9]),        .SRIB8(nr459d1[8]), .SRIB7(nr459d1[7]), .SRIB6(nr459d1[6]), .SRIB5(nr459d1[5]), .SRIB4(nr459d1[4]),        .SRIB3(nr459d1[3]), .SRIB2(nr459d1[2]), .SRIB1(nr459d1[1]), .SRIB0(nr459d1[0]),        .SROA17(yz894f[17]), .SROA16(yz894f[16]), .SROA15(yz894f[15]), .SROA14(yz894f[14]),        .SROA13(yz894f[13]), .SROA12(yz894f[12]), .SROA11(yz894f[11]), .SROA10(yz894f[10]), .SROA9(yz894f[9]),        .SROA8(yz894f[8]), .SROA7(yz894f[7]), .SROA6(yz894f[6]), .SROA5(yz894f[5]), .SROA4(yz894f[4]),        .SROA3(yz894f[3]), .SROA2(yz894f[2]), .SROA1(yz894f[1]), .SROA0(yz894f[0]),        .SROB17(gqac225[17]), .SROB16(gqac225[16]), .SROB15(gqac225[15]), .SROB14(gqac225[14]),        .SROB13(gqac225[13]), .SROB12(gqac225[12]), .SROB11(gqac225[11]), .SROB10(gqac225[10]), .SROB9(gqac225[9]),        .SROB8(gqac225[8]), .SROB7(gqac225[7]), .SROB6(gqac225[6]), .SROB5(gqac225[5]), .SROB4(gqac225[4]),        .SROB3(gqac225[3]), .SROB2(gqac225[2]), .SROB1(gqac225[1]), .SROB0(gqac225[0]),        .PO17(xj61129[17]), .PO16(xj61129[16]), .PO15(xj61129[15]), .PO14(xj61129[14]),        .PO13(xj61129[13]), .PO12(xj61129[12]), .PO11(xj61129[11]), .PO10(xj61129[10]), .PO9(xj61129[9]),        .PO8(xj61129[8]), .PO7(xj61129[7]), .PO6(xj61129[6]), .PO5(xj61129[5]), .PO4(xj61129[4]),        .PO3(xj61129[3]), .PO2(xj61129[2]), .PO1(xj61129[1]), .PO0(xj61129[0])    );
    defparam rv38165.SOURCEB_MODE = (jrb57a5 == "B") ? "B_SHIFT" : (jrb57a5 == "C") ? "C_SHIFT" : "HIGHSPEED" ;    defparam rv38165.MULT_BYPASS = "DISABLED" ;    defparam rv38165.CAS_MATCH_REG = "FALSE" ;     defparam rv38165.RESETMODE = "ASYNC" ;    defparam rv38165.GSR = "ENABLED" ;    defparam rv38165.REG_OUTPUT_RST = "RST0" ;    defparam rv38165.REG_OUTPUT_CE = "CE0" ;    defparam rv38165.REG_OUTPUT_CLK = "NONE" ;     defparam rv38165.REG_PIPELINE_RST = sj23ad9 ;    defparam rv38165.REG_PIPELINE_CE = gq2475b ;    defparam rv38165.REG_PIPELINE_CLK = xy48eb ;    defparam rv38165.REG_INPUTC_RST = sw82b83 ;    defparam rv38165.REG_INPUTC_CE = rgd0570 ;    defparam rv38165.REG_INPUTC_CLK = uk1a0ae ;    defparam rv38165.REG_INPUTB_RST = hq3f78e;    defparam rv38165.REG_INPUTB_CE = rtc7ef1 ;    defparam rv38165.REG_INPUTB_CLK = os78fde ;    defparam rv38165.REG_INPUTA_RST = jraf1fb;    defparam rv38165.REG_INPUTA_CE =  hq35e3f;    defparam rv38165.REG_INPUTA_CLK = vve6bc7 ;    defparam rv38165.HIGHSPEED_CLK = qi8d7e3;    defparam rv38165.CLK0_DIV = fn6bf18;    defparam rv38165.CLK1_DIV = pf5f8c7;    defparam rv38165.CLK2_DIV = jpfc63f;    defparam rv38165.CLK3_DIV = zxe31fe;    MULT18X18D rv38165 (.A17(uv75844[17]), .A16(uv75844[16]), .A15(uv75844[15]), .A14(uv75844[14]),        .A13(uv75844[13]), .A12(uv75844[12]), .A11(uv75844[11]), .A10(uv75844[10]), .A9(uv75844[9]),        .A8(uv75844[8]), .A7(uv75844[7]), .A6(uv75844[6]), .A5(uv75844[5]), .A4(uv75844[4]), .A3(uv75844[3]),        .A2(uv75844[2]), .A1(uv75844[1]), .A0(uv75844[0]), .B17(uv6f189[17]), .B16(uv6f189[16]),        .B15(uv6f189[15]), .B14(uv6f189[14]), .B13(uv6f189[13]), .B12(uv6f189[12]), .B11(uv6f189[11]),        .B10(uv6f189[10]), .B9(uv6f189[9]), .B8(uv6f189[8]), .B7(uv6f189[7]), .B6(uv6f189[6]), .B5(uv6f189[5]),        .B4(uv6f189[4]), .B3(uv6f189[3]), .B2(uv6f189[2]), .B1(uv6f189[1]), .B0(uv6f189[0]),        .C17(ng89868[17]), .C16(ng89868[16]), .C15(ng89868[15]), .C14(ng89868[14]), .C13(ng89868[13]),        .C12(ng89868[12]), .C11(ng89868[11]), .C10(ng89868[10]), .C9(ng89868[9]), .C8(ng89868[8]), .C7(ng89868[7]),        .C6(ng89868[6]), .C5(ng89868[5]), .C4(ng89868[4]), .C3(ng89868[3]), .C2(ng89868[2]),        .C1(ng89868[1]), .C0(ng89868[0]),        .SIGNEDA(kqe095b), .SIGNEDB(ba256c3), .SOURCEA(cze82ca), .SOURCEB(1'b0),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SRIA17(ks88b3a[17]), .SRIA16(ks88b3a[16]), .SRIA15(ks88b3a[15]), .SRIA14(ks88b3a[14]),        .SRIA13(ks88b3a[13]), .SRIA12(ks88b3a[12]), .SRIA11(ks88b3a[11]), .SRIA10(ks88b3a[10]), .SRIA9(ks88b3a[9]),        .SRIA8(ks88b3a[8]), .SRIA7(ks88b3a[7]), .SRIA6(ks88b3a[6]), .SRIA5(ks88b3a[5]), .SRIA4(ks88b3a[4]),        .SRIA3(ks88b3a[3]), .SRIA2(ks88b3a[2]), .SRIA1(ks88b3a[1]), .SRIA0(ks88b3a[0]),
        .SRIB17(1'b0), .SRIB16(1'b0), .SRIB15(1'b0),        .SRIB14(1'b0), .SRIB13(1'b0), .SRIB12(1'b0), .SRIB11(1'b0),        .SRIB10(1'b0), .SRIB9(1'b0), .SRIB8(1'b0), .SRIB7(1'b0),        .SRIB6(1'b0), .SRIB5(1'b0), .SRIB4(1'b0), .SRIB3(1'b0),        .SRIB2(1'b0), .SRIB1(1'b0), .SRIB0(1'b0),        .SROA17(vv4fb5c[17]), .SROA16(vv4fb5c[16]), .SROA15(vv4fb5c[15]), .SROA14(vv4fb5c[14]),        .SROA13(vv4fb5c[13]), .SROA12(vv4fb5c[12]), .SROA11(vv4fb5c[11]), .SROA10(vv4fb5c[10]), .SROA9(vv4fb5c[9]),        .SROA8(vv4fb5c[8]), .SROA7(vv4fb5c[7]), .SROA6(vv4fb5c[6]), .SROA5(vv4fb5c[5]), .SROA4(vv4fb5c[4]),        .SROA3(vv4fb5c[3]), .SROA2(vv4fb5c[2]), .SROA1(vv4fb5c[1]), .SROA0(vv4fb5c[0]),        .SROB17(), .SROB16(), .SROB15(),        .SROB14(), .SROB13(), .SROB12(), .SROB11(), .SROB10(), .SROB9(),        .SROB8(), .SROB7(), .SROB6(), .SROB5(), .SROB4(), .SROB3(), .SROB2(),        .SROB1(), .SROB0(), .ROA17(kd4179f), .ROA16(dobcfc),        .ROA15(en5e7e2), .ROA14(vvf3f14),        .ROA13(mt9f8a6), .ROA12(ldfc535),        .ROA11(ofe29ae), .ROA10(do14d75),        .ROA9(gqa6baa), .ROA8(thddd9d),        .ROA7(jceecee), .ROA6(tu76773),        .ROA5(ymb3b9b), .ROA4(ie9dcd8),        .ROA3(zkee6c0), .ROA2(ne73602),        .ROA1(fp9b013), .ROA0(dzd809e),        .ROB17(je35cb3), .ROB16(yzae59b),        .ROB15(ea72cdc), .ROB14(fc966e0),        .ROB13(wyb3702), .ROB12(zz9b811),        .ROB11(kddc08f), .ROB10(sue047d),        .ROB9(kf23e9), .ROB8(psc04f7),        .ROB7(sj27ba), .ROB6(vx13dd5),        .ROB5(bn9eeaf), .ROB4(alf757f),        .ROB3(fpbabfd), .ROB2(rgd5fee),        .ROB1(rvaff72), .ROB0(gb7fb97),        .ROC17(), .ROC16(), .ROC15(),        .ROC14(), .ROC13(), .ROC12(), .ROC11(), .ROC10(), .ROC9(),        .ROC8(), .ROC7(), .ROC6(), .ROC5(), .ROC4(), .ROC3(), .ROC2(),        .ROC1(), .ROC0(),        .P35(jr32b77), .P34(ux95bbe), .P33(ngaddf4),        .P32(xj6efa2), .P31(ay77d17), .P30(anbe8b8),        .P29(dmf45c4), .P28(xya2e22), .P27(yz17113),        .P26(twb889c), .P25(cmc44e3), .P24(tj22718),        .P23(ph138c6), .P22(do9c637), .P21(rte31bb),        .P20(yz18dde), .P19(yxc6ef4), .P18(nt377a4),        .P17(alfdcbc), .P16(hoee5e5), .P15(yk72f2a),        .P14(ie97950), .P13(ymbca81), .P12(qge5409),        .P11(tw2a049), .P10(th5024a), .P9(lf81257),        .P8(nt92be), .P7(ea495f6), .P6(nr4afb0),        .P5(fa57d86), .P4(cbbec33), .P3(vvf619c),        .P2(rvb0ce7), .P1(je8673f), .P0(an339fb),        .SIGNEDP(gbed731));    defparam gbe7ee2.SOURCEB_MODE = (uxabd2e == "B") ? "B_SHIFT" : (uxabd2e == "C") ? "C_SHIFT" : "HIGHSPEED" ;    defparam gbe7ee2.MULT_BYPASS = "DISABLED" ;    defparam gbe7ee2.CAS_MATCH_REG = "FALSE" ;     defparam gbe7ee2.RESETMODE = "ASYNC" ;    defparam gbe7ee2.GSR = "ENABLED" ;    defparam gbe7ee2.REG_OUTPUT_RST = "RST0" ;    defparam gbe7ee2.REG_OUTPUT_CE = "CE0" ;    defparam gbe7ee2.REG_OUTPUT_CLK = "NONE" ;     defparam gbe7ee2.REG_PIPELINE_RST = sh5b36a ;    defparam gbe7ee2.REG_PIPELINE_CE = tueb66d ;    defparam gbe7ee2.REG_PIPELINE_CLK = kf1d6cd ;    defparam gbe7ee2.REG_INPUTC_RST = kd70604 ;    defparam gbe7ee2.REG_INPUTC_CE = sjae0c0 ;    defparam gbe7ee2.REG_INPUTC_CLK = ou15c18 ;    defparam gbe7ee2.REG_INPUTB_RST = hbe3415;    defparam gbe7ee2.REG_INPUTB_CE = shdc682 ;    defparam gbe7ee2.REG_INPUTB_CLK = fafb8d0 ;    defparam gbe7ee2.REG_INPUTA_RST = mg1f71a;    defparam gbe7ee2.REG_INPUTA_CE =  vk83ee3;    defparam gbe7ee2.REG_INPUTA_CLK = byd07dc ;    defparam gbe7ee2.HIGHSPEED_CLK = qi8d7e3;    defparam gbe7ee2.CLK0_DIV = fn6bf18;    defparam gbe7ee2.CLK1_DIV = pf5f8c7;    defparam gbe7ee2.CLK2_DIV = jpfc63f;    defparam gbe7ee2.CLK3_DIV = zxe31fe;    MULT18X18D gbe7ee2 (.A17(xj61129[17]), .A16(xj61129 [16]), .A15(xj61129[15]), .A14(xj61129[14]),        .A13(xj61129[13]), .A12(xj61129[12]), .A11(xj61129[11]), .A10(xj61129[10]), .A9(xj61129[9]),        .A8(xj61129[8]), .A7(xj61129[7]), .A6(xj61129[6]), .A5(xj61129[5]), .A4(xj61129[4]), .A3(xj61129[3]),        .A2(xj61129[2]), .A1(xj61129[1]), .A0(xj61129[0]), .B17(shc6261[17]), .B16(shc6261[16]),        .B15(shc6261[15]), .B14(shc6261[14]), .B13(shc6261[13]), .B12(shc6261[12]), .B11(shc6261[11]),        .B10(shc6261[10]), .B9(shc6261[9]), .B8(shc6261[8]), .B7(shc6261[7]), .B6(shc6261[6]), .B5(shc6261[5]),        .B4(shc6261[4]), .B3(shc6261[3]), .B2(shc6261[2]), .B1(shc6261[1]), .B0(shc6261[0]),        .C17(th61a18[17]), .C16(th61a18[16]), .C15(th61a18[15]), .C14(th61a18[14]), .C13(th61a18[13]),        .C12(th61a18[12]), .C11(th61a18[11]), .C10(th61a18[10]), .C9(th61a18[9]), .C8(th61a18[8]), .C7(th61a18[7]),        .C6(th61a18[6]), .C5(th61a18[5]), .C4(th61a18[4]), .C3(th61a18[3]), .C2(th61a18[2]),        .C1(th61a18[1]), .C0(th61a18[0]),        .SIGNEDA(mr5b0d8), .SIGNEDB(wjc3627), .SOURCEA(1'b0), .SOURCEB(1'b0),        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),	.SRIA17(vv4fb5c[17]), .SRIA16(vv4fb5c[16]), .SRIA15(vv4fb5c[15]), .SRIA14(vv4fb5c[14]),        .SRIA13(vv4fb5c[13]), .SRIA12(vv4fb5c[12]), .SRIA11(vv4fb5c[11]), .SRIA10(vv4fb5c[10]), .SRIA9(vv4fb5c[9]),        .SRIA8(vv4fb5c[8]), .SRIA7(vv4fb5c[7]), .SRIA6(vv4fb5c[6]), .SRIA5(vv4fb5c[5]), .SRIA4(vv4fb5c[4]),        .SRIA3(vv4fb5c[3]), .SRIA2(vv4fb5c[2]), .SRIA1(vv4fb5c[1]), .SRIA0(vv4fb5c[0]),
        .SRIB17(1'b0), .SRIB16(1'b0), .SRIB15(1'b0),        .SRIB14(1'b0), .SRIB13(1'b0), .SRIB12(1'b0), .SRIB11(1'b0),        .SRIB10(1'b0), .SRIB9(1'b0), .SRIB8(1'b0), .SRIB7(1'b0),        .SRIB6(1'b0), .SRIB5(1'b0), .SRIB4(1'b0), .SRIB3(1'b0),        .SRIB2(1'b0), .SRIB1(1'b0), .SRIB0(1'b0),	.SROA17(qg7dae6[17]), .SROA16(qg7dae6[16]), .SROA15(qg7dae6[15]), .SROA14(qg7dae6[14]),        .SROA13(qg7dae6[13]), .SROA12(qg7dae6[12]), .SROA11(qg7dae6[11]), .SROA10(qg7dae6[10]), .SROA9(qg7dae6[9]),        .SROA8(qg7dae6[8]), .SROA7(qg7dae6[7]), .SROA6(qg7dae6[6]), .SROA5(qg7dae6[5]), .SROA4(qg7dae6[4]),        .SROA3(qg7dae6[3]), .SROA2(qg7dae6[2]), .SROA1(qg7dae6[1]), .SROA0(qg7dae6[0]),        .SROB17(), .SROB16(), .SROB15(),        .SROB14(), .SROB13(), .SROB12(), .SROB11(), .SROB10(), .SROB9(),        .SROB8(), .SROB7(), .SROB6(), .SROB5(), .SROB4(), .SROB3(), .SROB2(),        .SROB1(), .SROB0(), .ROA17(offd26a), .ROA16(nre9354),        .ROA15(yk49aa7), .ROA14(tu4d539),        .ROA13(cz6a9ca), .ROA12(qt54e55),        .ROA11(hqa72ac), .ROA10(wl39562),        .ROA9(xwcab14), .ROA8(tw93da1),        .ROA7(lf9ed0b), .ROA6(dzf685f),        .ROA5(yzb42fe), .ROA4(kfa17f4),        .ROA3(xybfa5), .ROA2(jp5fd2a),        .ROA1(lqfe957), .ROA0(nef4aba),        .ROB17(mr5bd15), .ROB16(icde8ad),        .ROB15(dmf4569), .ROB14(xya2b4a),        .ROB13(wy15a53), .ROB12(doad298),        .ROB11(xw694c3), .ROB10(dz4a61b),        .ROB9(go530df), .ROB8(fpa55d3),        .ROB7(je2ae9f), .ROB6(tu574fb),        .ROB5(hdba7da), .ROB4(mrd3ed7),        .ROB3(gd9f6bd), .ROB2(jcfb5ec),        .ROB1(bydaf63), .ROB0(bld7b1b),        .ROC17(), .ROC16(), .ROC15(),        .ROC14(), .ROC13(), .ROC12(), .ROC11(), .ROC10(), .ROC9(),        .ROC8(), .ROC7(), .ROC6(), .ROC5(), .ROC4(), .ROC3(), .ROC2(),        .ROC1(), .ROC0(),        .P35(sud4337), .P34(cba19b9), .P33(jrcdcc),        .P32(dm66e67), .P31(vx3733b), .P30(oub99df),        .P29(qtccef9), .P28(go677cd), .P27(mg3be68),        .P26(vidf340), .P25(blf9a02), .P24(rtcd017),        .P23(kq680be), .P22(dz405f1), .P21(an2f8e),        .P20(cb17c74), .P19(epbe3a5), .P18(nef1d2d),        .P17(vkbd8df), .P16(vvec6fb), .P15(lq637df),        .P14(ba1befa), .P13(zkdf7d3), .P12(fafbe9a),        .P11(rgdf4d2), .P10(sufa692), .P9(wjd3491),        .P8(ep9a48c), .P7(vvd2464), .P6(uk92326),        .P5(ph91930), .P4(zm8c986), .P3(dz64c33),        .P2(qv2619e), .P1(pu30cf4), .P0(tw867a3),        .SIGNEDP(xj6b98d));
    defparam rv9e8dc.REG_OPCODEIN_1_RST = mr7ad5e ;    defparam rv9e8dc.REG_OPCODEIN_1_CE = phaf5ab;    defparam rv9e8dc.REG_OPCODEIN_1_CLK = ls35eb5;    defparam rv9e8dc.REG_OPCODEIN_0_RST = cb26bd6;    defparam rv9e8dc.REG_OPCODEIN_0_CE = ld64d7a;    defparam rv9e8dc.REG_OPCODEIN_0_CLK = fa6c9af;    defparam rv9e8dc.REG_OPCODEOP1_1_CLK = "NONE" ;    defparam rv9e8dc.REG_OPCODEOP1_0_CLK = "NONE" ;    defparam rv9e8dc.REG_OPCODEOP0_1_RST = "RST0" ;    defparam rv9e8dc.REG_OPCODEOP0_1_CE = "CE0" ;    defparam rv9e8dc.REG_OPCODEOP0_1_CLK = "NONE" ;    defparam rv9e8dc.REG_OPCODEOP0_0_RST = "RST0" ;    defparam rv9e8dc.REG_OPCODEOP0_0_CE = "CE0" ;    defparam rv9e8dc.REG_OPCODEOP0_0_CLK = "NONE" ;    defparam rv9e8dc.REG_INPUTC1_RST = "RST0" ;    defparam rv9e8dc.REG_INPUTC1_CE = "CE0" ;    defparam rv9e8dc.REG_INPUTC1_CLK = "NONE" ;     defparam rv9e8dc.REG_INPUTC0_RST = "RST0" ;    defparam rv9e8dc.REG_INPUTC0_CE = "CE0" ;    defparam rv9e8dc.REG_INPUTC0_CLK = "NONE" ;     defparam rv9e8dc.REG_INPUTCFB_RST = zkc091d ;    defparam rv9e8dc.REG_INPUTCFB_CE = oh18123 ;    defparam rv9e8dc.REG_INPUTCFB_CLK = ba83024 ;    defparam rv9e8dc.LEGACY = "DISABLED";    defparam rv9e8dc.REG_FLAG_RST = "RST0" ;    defparam rv9e8dc.REG_FLAG_CE = "CE0" ;    defparam rv9e8dc.REG_FLAG_CLK = "NONE" ;    defparam rv9e8dc.REG_OUTPUT1_RST = ww6d527 ;    defparam rv9e8dc.REG_OUTPUT1_CE = fncdaa4 ;    defparam rv9e8dc.REG_OUTPUT1_CLK = czd9b54 ;    defparam rv9e8dc.REG_OUTPUT0_RST = ww6d527 ;    defparam rv9e8dc.REG_OUTPUT0_CE = fncdaa4 ;    defparam rv9e8dc.REG_OUTPUT0_CLK = czd9b54 ;    defparam rv9e8dc.MULT9_MODE = "DISABLED" ;    defparam rv9e8dc.RNDPAT = "0x00000000000000" ;    defparam rv9e8dc.MASKPAT = "0x00000000000000" ;    defparam rv9e8dc.MCPAT = "0x00000000000000" ;    defparam rv9e8dc.MASK01 = "0x00000000000000" ;    defparam rv9e8dc.MASKPAT_SOURCE = "STATIC" ;    defparam rv9e8dc.MCPAT_SOURCE = "STATIC" ;    defparam rv9e8dc.RESETMODE = "ASYNC" ;    defparam rv9e8dc.GSR = "ENABLED" ;    defparam rv9e8dc.CLK0_DIV = fn6bf18;    defparam rv9e8dc.CLK1_DIV = pf5f8c7;    defparam rv9e8dc.CLK2_DIV = jpfc63f;    defparam rv9e8dc.CLK3_DIV = zxe31fe;    ALU54B rv9e8dc (        .CE0(goc447c[0]), .CE1(goc447c[1]), .CE2(goc447c[2]), .CE3(goc447c[3]),        .CLK0(ep8f818[0]), .CLK1(ep8f818[1]), .CLK2(ep8f818[2]), .CLK3(ep8f818[3]),        .RST0(mee0ca2[0]), .RST1(mee0ca2[1]), .RST2(mee0ca2[2]), .RST3(mee0ca2[3]),        .SIGNEDIA(gbed731), .SIGNEDIB(xj6b98d),        .A35(je35cb3), .A34(yzae59b),        .A33(ea72cdc), .A32(fc966e0),        .A31(wyb3702), .A30(zz9b811),        .A29(kddc08f), .A28(sue047d),        .A27(kf23e9), .A26(psc04f7),        .A25(sj27ba), .A24(vx13dd5),        .A23(bn9eeaf), .A22(alf757f),        .A21(fpbabfd), .A20(rgd5fee),        .A19(rvaff72), .A18(gb7fb97),        .A17(kd4179f), .A16(dobcfc),        .A15(en5e7e2), .A14(vvf3f14),        .A13(mt9f8a6), .A12(ldfc535),        .A11(ofe29ae), .A10(do14d75),        .A9(gqa6baa), .A8(thddd9d), .A7(jceecee),        .A6(tu76773), .A5(ymb3b9b), .A4(ie9dcd8),        .A3(zkee6c0), .A2(ne73602), .A1(fp9b013),        .A0(dzd809e), .B35(mr5bd15),        .B34(icde8ad), .B33(dmf4569),        .B32(xya2b4a), .B31(wy15a53),        .B30(doad298), .B29(xw694c3),        .B28(dz4a61b), .B27(go530df),        .B26(fpa55d3), .B25(je2ae9f),        .B24(tu574fb), .B23(hdba7da),        .B22(mrd3ed7), .B21(gd9f6bd),        .B20(jcfb5ec), .B19(bydaf63),        .B18(bld7b1b), .B17(offd26a),        .B16(nre9354), .B15(yk49aa7),        .B14(tu4d539), .B13(cz6a9ca),        .B12(qt54e55), .B11(hqa72ac),        .B10(wl39562), .B9(xwcab14),        .B8(tw93da1), .B7(lf9ed0b), .B6(dzf685f),        .B5(yzb42fe), .B4(kfa17f4), .B3(xybfa5),        .B2(jp5fd2a), .B1(lqfe957), .B0(nef4aba),        .C53(hbc2efa[53]), .C52(hbc2efa[52]), .C51(hbc2efa[51]), .C50(hbc2efa[50]),        .C49(hbc2efa[49]), .C48(hbc2efa[48]), .C47(hbc2efa[47]), .C46(hbc2efa[46]), .C45(hbc2efa[45]),        .C44(hbc2efa[44]), .C43(hbc2efa[43]), .C42(hbc2efa[42]), .C41(hbc2efa[41]), .C40(hbc2efa[40]),        .C39(hbc2efa[39]), .C38(hbc2efa[38]), .C37(hbc2efa[37]), .C36(hbc2efa[36]), .C35(hbc2efa[35]),        .C34(hbc2efa[34]), .C33(hbc2efa[33]), .C32(hbc2efa[32]), .C31(hbc2efa[31]), .C30(hbc2efa[30]),        .C29(hbc2efa[29]), .C28(hbc2efa[28]), .C27(hbc2efa[27]), .C26(hbc2efa[26]), .C25(hbc2efa[25]),        .C24(hbc2efa[24]), .C23(hbc2efa[23]), .C22(hbc2efa[22]), .C21(hbc2efa[21]), .C20(hbc2efa[20]),        .C19(hbc2efa[19]), .C18(hbc2efa[18]), .C17(hbc2efa[17]), .C16(hbc2efa[16]), .C15(hbc2efa[15]),        .C14(hbc2efa[14]), .C13(hbc2efa[13]), .C12(hbc2efa[12]), .C11(hbc2efa[11]), .C10(hbc2efa[10]),        .C9(hbc2efa[9]), .C8(hbc2efa[8]), .C7(hbc2efa[7]), .C6(hbc2efa[6]), .C5(hbc2efa[5]),        .C4(hbc2efa[4]), .C3(hbc2efa[3]), .C2(hbc2efa[2]), .C1(hbc2efa[1]), .C0(hbc2efa[0]),        .CFB53(meeac7e[53]), .CFB52(meeac7e[52]), .CFB51(meeac7e[51]), .CFB50(meeac7e[50]),        .CFB49(meeac7e[49]), .CFB48(meeac7e[48]), .CFB47(meeac7e[47]), .CFB46(meeac7e[46]), .CFB45(meeac7e[45]),        .CFB44(meeac7e[44]), .CFB43(meeac7e[43]), .CFB42(meeac7e[42]), .CFB41(meeac7e[41]), .CFB40(meeac7e[40]),        .CFB39(meeac7e[39]), .CFB38(meeac7e[38]), .CFB37(meeac7e[37]), .CFB36(meeac7e[36]), .CFB35(meeac7e[35]),        .CFB34(meeac7e[34]), .CFB33(meeac7e[33]), .CFB32(meeac7e[32]), .CFB31(meeac7e[31]), .CFB30(meeac7e[30]),        .CFB29(meeac7e[29]), .CFB28(meeac7e[28]), .CFB27(meeac7e[27]), .CFB26(meeac7e[26]), .CFB25(meeac7e[25]),        .CFB24(meeac7e[24]), .CFB23(meeac7e[23]), .CFB22(meeac7e[22]), .CFB21(meeac7e[21]), .CFB20(meeac7e[20]),        .CFB19(meeac7e[19]), .CFB18(meeac7e[18]), .CFB17(meeac7e[17]), .CFB16(meeac7e[16]), .CFB15(meeac7e[15]),        .CFB14(meeac7e[14]), .CFB13(meeac7e[13]), .CFB12(meeac7e[12]), .CFB11(meeac7e[11]), .CFB10(meeac7e[10]),        .CFB9(meeac7e[9]), .CFB8(meeac7e[8]), .CFB7(meeac7e[7]), .CFB6(meeac7e[6]), .CFB5(meeac7e[5]),        .CFB4(meeac7e[4]), .CFB3(meeac7e[3]), .CFB2(meeac7e[2]), .CFB1(meeac7e[1]), .CFB0(meeac7e[0]),        .MA35(jr32b77),        .MA34(ux95bbe), .MA33(ngaddf4),        .MA32(xj6efa2), .MA31(ay77d17),        .MA30(anbe8b8), .MA29(dmf45c4),        .MA28(xya2e22), .MA27(yz17113),        .MA26(twb889c), .MA25(cmc44e3),        .MA24(tj22718), .MA23(ph138c6),        .MA22(do9c637), .MA21(rte31bb),        .MA20(yz18dde), .MA19(yxc6ef4),        .MA18(nt377a4), .MA17(alfdcbc),        .MA16(hoee5e5), .MA15(yk72f2a),        .MA14(ie97950), .MA13(ymbca81),        .MA12(qge5409), .MA11(tw2a049),        .MA10(th5024a), .MA9(lf81257), .MA8(nt92be),        .MA7(ea495f6), .MA6(nr4afb0), .MA5(fa57d86),        .MA4(cbbec33), .MA3(vvf619c), .MA2(rvb0ce7),        .MA1(je8673f), .MA0(an339fb), .MB35(sud4337),        .MB34(cba19b9), .MB33(jrcdcc),        .MB32(dm66e67), .MB31(vx3733b),        .MB30(oub99df), .MB29(qtccef9),        .MB28(go677cd), .MB27(mg3be68),        .MB26(vidf340), .MB25(blf9a02),        .MB24(rtcd017), .MB23(kq680be),        .MB22(dz405f1), .MB21(an2f8e),        .MB20(cb17c74), .MB19(epbe3a5),        .MB18(nef1d2d), .MB17(vkbd8df),        .MB16(vvec6fb), .MB15(lq637df),        .MB14(ba1befa), .MB13(zkdf7d3),        .MB12(fafbe9a), .MB11(rgdf4d2),        .MB10(sufa692), .MB9(wjd3491), .MB8(ep9a48c),        .MB7(vvd2464), .MB6(uk92326), .MB5(ph91930),        .MB4(zm8c986), .MB3(dz64c33), .MB2(qv2619e),        .MB1(pu30cf4), .MB0(tw867a3),        .CIN53(irb1f88[53]), .CIN52(irb1f88[52]), .CIN51(irb1f88[51]), .CIN50(irb1f88[50]),        .CIN49(irb1f88[49]), .CIN48(irb1f88[48]), .CIN47(irb1f88[47]), .CIN46(irb1f88[46]), .CIN45(irb1f88[45]),        .CIN44(irb1f88[44]), .CIN43(irb1f88[43]), .CIN42(irb1f88[42]), .CIN41(irb1f88[41]), .CIN40(irb1f88[40]),        .CIN39(irb1f88[39]), .CIN38(irb1f88[38]), .CIN37(irb1f88[37]), .CIN36(irb1f88[36]), .CIN35(irb1f88[35]),        .CIN34(irb1f88[34]), .CIN33(irb1f88[33]), .CIN32(irb1f88[32]), .CIN31(irb1f88[31]), .CIN30(irb1f88[30]),        .CIN29(irb1f88[29]), .CIN28(irb1f88[28]), .CIN27(irb1f88[27]), .CIN26(irb1f88[26]), .CIN25(irb1f88[25]),        .CIN24(irb1f88[24]), .CIN23(irb1f88[23]), .CIN22(irb1f88[22]), .CIN21(irb1f88[21]), .CIN20(irb1f88[20]),        .CIN19(irb1f88[19]), .
CIN18(irb1f88[18]), .CIN17(irb1f88[17]), .CIN16(irb1f88[16]), .CIN15(irb1f88[15]),        .CIN14(irb1f88[14]), .CIN13(irb1f88[13]), .CIN12(irb1f88[12]), .CIN11(irb1f88[11]), .CIN10(irb1f88[10]),        .CIN9(irb1f88[9]), .CIN8(irb1f88[8]), .CIN7(irb1f88[7]), .CIN6(irb1f88[6]), .CIN5(irb1f88[5]),        .CIN4(irb1f88[4]), .CIN3(irb1f88[3]), .CIN2(irb1f88[2]), .CIN1(irb1f88[1]), .CIN0(irb1f88[0]),        .SIGNEDCIN(fn7e22c),        .OP10(ipede6e[3]), .OP9(ipede6e[2]), .OP8(ipede6e[1]), .OP7(ipede6e[0]),        .OP6(mecb76f[2]), .OP5(mecb76f[1]), .OP4(mecb76f[0]),        .OP3(tj196ed[1]), .OP2(tj196ed[0]), .OP1(ipc32dd[1]), .OP0(ipc32dd[0]),        .R53(rv32887[53]), .R52(rv32887[52]), .R51(rv32887[51]), .R50(rv32887[50]),        .R49(rv32887[49]), .R48(rv32887[48]), .R47(rv32887[47]), .R46(rv32887[46]), .R45(rv32887[45]),        .R44(rv32887[44]), .R43(rv32887[43]), .R42(rv32887[42]), .R41(rv32887[41]), .R40(rv32887[40]),        .R39(rv32887[39]), .R38(rv32887[38]), .R37(rv32887[37]), .R36(rv32887[36]), .R35(rv32887[35]),        .R34(rv32887[34]), .R33(rv32887[33]), .R32(rv32887[32]), .R31(rv32887[31]), .R30(rv32887[30]),        .R29(rv32887[29]), .R28(rv32887[28]), .R27(rv32887[27]), .R26(rv32887[26]), .R25(rv32887[25]),        .R24(rv32887[24]), .R23(rv32887[23]), .R22(rv32887[22]), .R21(rv32887[21]), .R20(rv32887[20]),        .R19(rv32887[19]), .R18(rv32887[18]), .R17(rv32887[17]), .R16(rv32887[16]), .R15(rv32887[15]),        .R14(rv32887[14]), .R13(rv32887[13]), .R12(rv32887[12]), .R11(rv32887[11]), .R10(rv32887[10]),        .R9(rv32887[9]), .R8(rv32887[8]), .R7(rv32887[7]), .R6(rv32887[6]), .R5(rv32887[5]),        .R4(rv32887[4]), .R3(rv32887[3]), .R2(rv32887[2]), .R1(rv32887[1]), .R0(rv32887[0]),        .CO53(wy10fba[53]), .CO52(wy10fba[52]), .CO51(wy10fba[51]), .CO50(wy10fba[50]),        .CO49(wy10fba[49]), .CO48(wy10fba[48]), .CO47(wy10fba[47]), .CO46(wy10fba[46]), .CO45(wy10fba[45]),        .CO44(wy10fba[44]), .CO43(wy10fba[43]), .CO42(wy10fba[42]), .CO41(wy10fba[41]), .CO40(wy10fba[40]),        .CO39(wy10fba[39]), .CO38(wy10fba[38]), .CO37(wy10fba[37]), .CO36(wy10fba[36]), .CO35(wy10fba[35]),        .CO34(wy10fba[34]), .CO33(wy10fba[33]), .CO32(wy10fba[32]), .CO31(wy10fba[31]), .CO30(wy10fba[30]),        .CO29(wy10fba[29]), .CO28(wy10fba[28]), .CO27(wy10fba[27]), .CO26(wy10fba[26]), .CO25(wy10fba[25]),        .CO24(wy10fba[24]), .CO23(wy10fba[23]), .CO22(wy10fba[22]), .CO21(wy10fba[21]), .CO20(wy10fba[20]),        .CO19(wy10fba[19]), .CO18(wy10fba[18]), .CO17(wy10fba[17]), .CO16(wy10fba[16]), .CO15(wy10fba[15]),        .CO14(wy10fba[14]), .CO13(wy10fba[13]), .CO12(wy10fba[12]), .CO11(wy10fba[11]), .CO10(wy10fba[10]),        .CO9(wy10fba[9]), .CO8(wy10fba[8]), .CO7(wy10fba[7]), .CO6(wy10fba[6]), .CO5(wy10fba[5]),        .CO4(wy10fba[4]), .CO3(wy10fba[3]), .CO2(wy10fba[2]), .CO1(wy10fba[1]), .CO0(wy10fba[0]),        .EQZ(), .EQZM(), .EQOM(), .EQPAT(),        .EQPATB(), .OVER(), .UNDER(), .OVERUNDER(), .SIGNEDR(czf7400));
always@* begin rgcf453<={rtc7fb4>>1,sud1e18[0]};ead14dd<={jpf6992>>1,sud1e18[1]};me5374d<={ph325a8>>1,sud1e18[2]};rtdd347<={xlb51cb>>1,sud1e18[3]};ne4d1fe<={ep39793>>1,sud1e18[4]};by47f90<={czf2704>>1,sud1e18[5]};je3fc82<=sud1e18[6];xwfe412<=sud1e18[7];kdf2093<=sud1e18[8];gd9049d<=sud1e18[9];ie824ed<={meeac7e>>1,sud1e18[10]};sj12769<={irb1f88>>1,sud1e18[11]};xy93b4c<=sud1e18[12];ou9da63<={ks88b3a>>1,sud1e18[13]};wjed318<={nr459d1>>1,sud1e18[14]};ec97e3c<={ipc32dd>>1,sud1e18[15]};vxbf1e1<={tj196ed>>1,sud1e18[16]};uvf8f0f<={mecb76f>>1,sud1e18[17]};tu698c5<={gd2ce8f>>1,sud1e18[18]};cb3c3ee<={ipede6e>>1,sud1e18[19]};qv18a82<={ep8f818>>1,sud1e18[20]};lqc5414<={goc447c>>1,sud1e18[21]};ls2a0a2<=sud1e18[22];hb50512<=sud1e18[23];qi82897<={sh4eb08>>1,sud1e18[24]};zm144b8<={uv75844>>1,sud1e18[25]};fca25c3<={gqac225>>1,sud1e18[26]};gd12e1a<={xj61129>>1,sud1e18[27]};ie970d5<={yz894f>>1,sud1e18[28]};vkb86a8<={uv44a7d>>1,sud1e18[29]};qtc3542<={je253ed>>1,sud1e18[30]};co1aa15<={hbc2efa>>1,sud1e18[31]};hod50a9<={vv4fb5c>>1,sud1e18[32]};ria854b<={qg7dae6>>1,sud1e18[33]};uka96d1<={ay5cc6f>>1,sud1e18[34]};en4b689<={gq31bc6>>1,sud1e18[35]};qt5b44d<={uv6f189>>1,sud1e18[36]};lqda26c<={shc6261>>1,sud1e18[37]};wwd1362<={ng89868>>1,sud1e18[38]};hq89b11<={th61a18>>1,sud1e18[39]};end
always@* begin ec1a3c3[2047]<=jpf6992[0];ec1a3c3[2046]<=ph325a8[0];ec1a3c3[2044]<=xlb51cb[0];ec1a3c3[2040]<=ep39793[0];ec1a3c3[2032]<=czf2704[0];ec1a3c3[2016]<=kqe095b;ec1a3c3[1985]<=ba256c3;ec1a3c3[1922]<=hbd89ea;ec1a3c3[1796]<=fp27ab1;ec1a3c3[1732]<=uv44a7d[0];ec1a3c3[1572]<=vv4fb5c[0];ec1a3c3[1544]<=meeac7e[0];ec1a3c3[1457]<=xj61129[0];ec1a3c3[1417]<=je253ed[0];ec1a3c3[1302]<=goc447c[0];ec1a3c3[1164]<=shc6261[0];ec1a3c3[1115]<=gqa9d61;ec1a3c3[1105]<=mecb76f[0];ec1a3c3[1096]<=qg7dae6[0];ec1a3c3[1041]<=irb1f88[0];ec1a3c3[1023]<=rtc7fb4[0];ec1a3c3[866]<=yz894f[0];ec1a3c3[786]<=hbc2efa[0];ec1a3c3[728]<=gqac225[0];ec1a3c3[651]<=ep8f818[0];ec1a3c3[582]<=uv6f189[0];ec1a3c3[562]<=th61a18[0];ec1a3c3[557]<=wy153ac;ec1a3c3[552]<=tj196ed[0];ec1a3c3[364]<=uv75844[0];ec1a3c3[325]<=ipede6e[0];ec1a3c3[291]<=gq31bc6[0];ec1a3c3[281]<=ng89868[0];ec1a3c3[276]<=ipc32dd[0];ec1a3c3[182]<=sh4eb08[0];ec1a3c3[162]<=gd2ce8f[0];ec1a3c3[145]<=ay5cc6f[0];ec1a3c3[138]<=nr459d1[0];ec1a3c3[69]<=ks88b3a[0];ec1a3c3[34]<=fn7e22c;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module uif5969_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  tuf19e8,
                  din, 
                  frmsync_in, 
                  dvalid_in, 
                  sw3b0ee,
                  dout, 
                  dvalid_out, 
                  xwee109,
                  frmsync_out);
parameter   NUM_PLANE      = 1;
parameter   DWIDTH         = 8;
parameter   CWIDTH         = 8;
parameter   VFTAPS         = 4;
parameter   KERNEL         = "LANCZOS";
parameter   an178df     = 1;
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   ADAPTIVE       = "FALSE";
parameter   EDGE_TH        = 8;
parameter   DOUTWIDTH      = 8;
parameter   DTYPE          = "UNSIGNED";
parameter   CTYPE          = "UNSIGNED";
parameter   OTYPE          = "UNSIGNED";
parameter   DIN_POINTS     = 0;
parameter   COEFF_POINTS   = 0;
parameter   DOUT_POINTS    = 0;
parameter   MSB_METHOD     = "SATURATION";
parameter   LSB_METHOD     = "NORMAL";
parameter   tu66fe4        = "TRUE";
parameter   an12cda        = 8;
parameter   gd18b56     = 1;
parameter   jcc5ab4      = 0;
parameter   MULTTYPE       = "DSP";
parameter   HIGHSPEED      = "FALSE";
parameter   FAMILY         = "ECP3";
localparam  shc3438     = (PARALLEL=="FALSE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  fp38a11     = (PARALLEL== "TRUE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  ea4cc3f        = shc3438*DOUTWIDTH;
localparam  gq87e53     = DWIDTH + CWIDTH + ntc03e(VFTAPS-1);
localparam  uk98798      = VFTAPS*CWIDTH;
localparam  blf3062      = VFTAPS*DWIDTH;
localparam   vxc5c9      = VFTAPS*DWIDTH*shc3438;
localparam  wjc9c60     = (HIGHSPEED=="TRUE") && (FAMILY=="ECP5U") && (VFTAPS>=4) && (PARALLEL=="TRUE") && (shc3438>1);
localparam  fp2dea1       = 3+ntc03e(VFTAPS-1);
localparam  med43a4       = (VFTAPS<=4) ? 4 : (ntc03e(VFTAPS-1)+2);
localparam  ira4317      = fp2dea1-med43a4;
localparam  ui62f46     = (wjc9c60) ? fp2dea1 : med43a4;
localparam  ay46354       = 24;
localparam  ec31aa1     = ((gq87e53-COEFF_POINTS)+ay46354-1)/ay46354;
localparam  rv916d      = (LSB_METHOD=="TRUNCATION") ? 2 : ec31aa1+3;
localparam  tj2db9f       = (ui62f46+rv916d) + gd18b56;
localparam  ep9fc32        = ntc03e(tj2db9f-1);
localparam  pu86559       = (ui62f46+rv916d) + gd18b56 + jcc5ab4;
localparam  qgcbd61        = ntc03e(pu86559-1);
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input    [uk98798-1:0]   tuf19e8;
input     [vxc5c9-1:0]   din;
input                      dvalid_in;
input                      frmsync_in;
input      [an12cda-1:0]   sw3b0ee;
output     [ea4cc3f-1:0]   dout;
output                     dvalid_out;
output                     frmsync_out;
output     [an12cda-1:0]   xwee109;
wire    [gq87e53-1:0]   epb104b[shc3438-1:0];
wire                       mr412e0[shc3438-1:0];
wire                       sh4b826[shc3438-1:0];
wire       [an12cda-1:0]   xy4d08[shc3438-1:0];
wire     [DOUTWIDTH-1:0]   wla10e8[shc3438-1:0];
wire                       cm43a2c[shc3438-1:0];
wire                       gbe8b05[shc3438-1:0];
wire       [an12cda-1:0]   qt60b3d[shc3438-1:0];
wire       [an12cda-9:0]   cm67b0c;
wire               [7:0]   nt3d861;
wire     [blf3062-1:0]   vv6187f[shc3438-1:0];
reg     [gq87e53-1:0]   coffb6[ira4317-1:0];
wire    [gq87e53-1:0]   hbf6c22;
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [uk98798 - 1 : 0] xwda026;
reg [vxc5c9 - 1 : 0] lq5df83;
reg uvf8021;
reg icff004;
reg [an12cda - 1 : 0] wyacd21;
reg [an12cda - 9 : 0] ks34843;
reg [7 : 0] gda4219;
reg [gq87e53 - 1 : 0] ux8669;
reg [2047:0] ec1a3c3;
wire [9:0] sud1e18;
localparam yz8f0c0 = 10,su78605 = 32'hfdffca8b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
generate   if(VFTAPS==1) begin :uv4e0f4      assign dout        = lq5df83;      assign dvalid_out  = icff004;      assign frmsync_out = uvf8021;      assign xwee109  = wyacd21;   end else begin :je2fa08            assign xwee109  = {ks34843,gda4219};      assign frmsync_out = gbe8b05[0];      assign dvalid_out  = cm43a2c[0];      for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :rv1ce33         for (mt81ae=0;mt81ae<VFTAPS;mt81ae=mt81ae+1) begin :rgf4f67            assign vv6187f[tj1c509][(mt81ae+1)*DWIDTH-1:mt81ae*DWIDTH] = lq5df83[mt81ae*shc3438*DWIDTH + (tj1c509+1)*DWIDTH -1 : mt81ae*shc3438*DWIDTH + tj1c509*DWIDTH];         end         assign dout[(tj1c509+1)*DOUTWIDTH-1:tj1c509*DOUTWIDTH]   = wla10e8[tj1c509];      end      if(MULTTYPE=="LUT") begin :shccdae         for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :mtab9ec            pu14efe_Scaler #( .fa66a78        (DWIDTH        ),                              .vv4a821        (CWIDTH        ),                              .ned55c5        (gq87e53    ),                              .dba0875         (VFTAPS        ),                              .pu43ae       (an12cda       ),                              .qi21d72         (DTYPE         ),                              .pueb90         (CTYPE         ),                              .wj75c82      (an178df    ),                              .FAMILY        (FAMILY        ))            bn3085          (                                .clk           (clk           ),                              .rstn          (rstn          ),                              .ce            (ofe284f            ),                              .sr            (do1427d            ),                              .tuf19e8           (xwda026           ),                              .din           (vv6187f[tj1c509]     ),                              .dvalid_in     (icff004     ),                              .zm8cf43       (icff004     ),                              .ay67a1b     (icff004     ),                              .xl3d0d9    (uvf8021    ),                              .pu1bac0       (wyacd21     ),                                                            .dout          (epb104b[tj1c509]    ),                              .fa580fa   (sh4b826[tj1c509] ),                              .fac07d3      (xy4d08[tj1c509]  ),                              .dvalid_out    (mr412e0[tj1c509]  ));         end      end else if(wjc9c60==1) begin :oh9ac26         ecb3f7f_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (gq87e53    ),                           .dba0875         (VFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .FAMILY        (FAMILY        ))         dmc0ab1       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (xwda026           ),                           .din           (vv6187f[0]      ),                           .lqc5a6d           (vv6187f[1]      ),                           .dvalid_in     (icff004     ),                           .xl3d0d9    (uvf8021    ),                           .pu1bac0       (wyacd21     ),                                                      .dout          (epb104b[0]    ),                           .fc99f8c          (epb104b[1]    ),                           .fa580fa   (sh4b826[0] ),                           .fac07d3      (xy4d08[0]  ),                           .dvalid_out    (mr412e0[0]  ));         if(shc3438==3) begin :hd3239e            blf6c5b_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (gq87e53    ),                           .dba0875         (VFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .wj75c82      (an178df    ),                           .FAMILY        (FAMILY        ))            bn3085       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (xwda026           ),                           .din           (vv6187f[2]      ),                           .dvalid_in     (icff004     ),                           .zm8cf43       (icff004     ),                           .ay67a1b     (icff004     ),                           .xl3d0d9    (uvf8021    ),                           .pu1bac0       (wyacd21     ),                                                      .dout          (hbf6c22     ),                           .fa580fa   (sh4b826[2] ),                           .fac07d3      (xy4d08[2]  ),                           .dvalid_out    (mr412e0[2]  ));            for (tj1c509=0;tj1c509<ira4317;tj1c509=tj1c509+1) begin :pscf19b               always @(posedge clk or negedge rstn)               begin                  if (!rstn) begin                     coffb6[tj1c509] <= {gq87e53{1'b0}};                  end else if(ofe284f) begin                     if (do1427d) begin                        coffb6[tj1c509] <= {gq87e53{1'b0}};                     end else begin                        coffb6[tj1c509] <= (tj1c509==0) ? ux8669 : coffb6[tj1c509-1];                     end                  end               end            end            assign epb104b[2] = coffb6[ira4317-1];         end      end else begin :wy1fd07         for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :zkca5ac            blf6c5b_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (gq87e53    ),                           .dba0875         (VFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .wj75c82      (an178df    ),                           .FAMILY        (FAMILY        ))            bn3085       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (xwda026           ),                           .din           (vv6187f[tj1c509]     ),                           .dvalid_in     (icff004     ),                           .zm8cf43       (icff004     ),                           .ay67a1b     (icff004     ),                           .xl3d0d9    (uvf8021    ),                           .pu1bac0       (wyacd21     ),                                                      .dout          (epb104b[tj1c509]    ),                           .fa580fa   (sh4b826[tj1c509] ),                           .fac07d3      (xy4d08[tj1c509]  ),                           .dvalid_out    (mr412e0[tj1c509]  ));         end      end
      for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :ne63a8a         ald9e66_Scaler  #(    .DWIDTH        (gq87e53    ),                        .tj37f23      (1             ),                        .icfa6b0 (MSB_METHOD    ),                        .uvd3581 (LSB_METHOD    ),                        .oh9ac0c      (CTYPE         ),                        .ald6065     (OTYPE         ),                        .lfb032c     (DIN_POINTS    ),                        .lf81966       (COEFF_POINTS  ),                        .rvcb37    (DOUT_POINTS   ),                        .qv2cdfc     (an12cda       ),                        .tu66fe4       (tu66fe4       ),                        .DOUTWIDTH     (DOUTWIDTH     ))         rv2dde1 (                            .rstn          (rstn          ),                        .clk           (clk           ),                        .ce            (ofe284f            ),                        .sr            (do1427d            ),                        .mg346eb        (mr412e0[0]   ),                        .qia3758       (sh4b826[0]  ),                        .din           (epb104b[tj1c509]    ),                        .pu1bac0       (xy4d08[0]   ),                                                .dvalid_out    (cm43a2c[tj1c509]    ),                        .fa580fa   (gbe8b05[tj1c509]   ),                        .fac07d3      (qt60b3d[tj1c509]    ),                        .dout          (wla10e8[tj1c509]      ));      end            pmi_distributed_shift_reg  #( .pmi_data_width      (8          ),                                    .pmi_regmode         ("reg"      ),                                    .pmi_shiftreg_type   ("fixed"    ),                                    .pmi_num_shift       (tj2db9f-1 ),                                    .pmi_num_width       (ep9fc32    ),                                                                        .pmi_max_shift       (tj2db9f-1 ),                                    .pmi_max_width       (ep9fc32    ),                                                                        .pmi_init_file       ("none"     ),                                    .pmi_init_file_format("binary"   ),                                    .pmi_family          (FAMILY     ),                                    .module_type         ("pmi_distributed_shift_reg"))      vxc16b                ( .Din      (sw3b0ee[7:0]        ),                                    .Addr     ({ep9fc32{1'b0}}       ),                                    .Clock    (clk                   ),                                    .ClockEn  (ce                    ),                                    .Reset    (~rstn || sr           ),                                    .Q        (nt3d861            ));      pmi_distributed_shift_reg  #( .pmi_data_width      (an12cda-8  ),                                    .pmi_regmode         ("reg"      ),                                    .pmi_shiftreg_type   ("fixed"    ),                                    .pmi_num_shift       (pu86559-1 ),                                    .pmi_num_width       (qgcbd61    ),                                                                        .pmi_max_shift       (pu86559-1 ),                                    .pmi_max_width       (qgcbd61    ),                                                                        .pmi_init_file       ("none"     ),                                    .pmi_init_file_format("binary"   ),                                    .pmi_family          (FAMILY     ),                                    .module_type         ("pmi_distributed_shift_reg"))      ri486e                 ( .Din      (sw3b0ee[an12cda-1:8]),                                    .Addr     ({qgcbd61{1'b0}}       ),                                    .Clock    (clk                   ),                                    .ClockEn  (ce                    ),                                    .Reset    (~rstn || sr           ),                                    .Q        (cm67b0c             ));   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];xwda026<={tuf19e8>>1,sud1e18[2]};lq5df83<={din>>1,sud1e18[3]};uvf8021<=sud1e18[4];icff004<=sud1e18[5];wyacd21<={sw3b0ee>>1,sud1e18[6]};ks34843<={cm67b0c>>1,sud1e18[7]};gda4219<={nt3d861>>1,sud1e18[8]};ux8669<={hbf6c22>>1,sud1e18[9]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=tuf19e8[0];ec1a3c3[2044]<=din[0];ec1a3c3[2040]<=frmsync_in;ec1a3c3[2032]<=dvalid_in;ec1a3c3[2017]<=sw3b0ee[0];ec1a3c3[1987]<=cm67b0c[0];ec1a3c3[1926]<=nt3d861[0];ec1a3c3[1804]<=hbf6c22[0];ec1a3c3[1023]<=ce;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module xl13c70_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  din, 
                  dvalid_in, 
                  frmsync_in, 
                  sw3b0ee,
                  ph8ed50,
                  th4ab8e,
                  vx9571,
                  dout, 
                  dvalid_out, 
                  frmsync_out);
parameter   SCALER_NAME    = "SCALER";
parameter   NUM_PLANE      = 1;
parameter   VINWIDTH       = 320;
parameter   VOUTWIDTH      = 320;
parameter   KERNEL         = "LANCZOS";
parameter   HFTAPS         = 4;
parameter   HFPHASES       = 256;
parameter   EDGEMODE       = "COPY";
parameter   EDGEVALUE      = 0;
parameter   an178df     = 1;
parameter   DOUTWIDTH      = 8;
parameter   DWIDTH         = 8;
parameter   CWIDTH         = 8;
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   ADAPTIVE       = "FALSE";
parameter   CBANKS         = 1;
parameter   EDGE_TH        = 8;
parameter   RESAMPLE       = "AVERAGE";
parameter   DTYPE          = "UNSIGNED";
parameter   CTYPE          = "UNSIGNED";
parameter   OTYPE          = "UNSIGNED";
parameter   DIN_POINTS     = 0;
parameter   COEFF_POINTS   = 0;
parameter   DOUT_POINTS    = 0;
parameter   MSB_METHOD     = "SATURATION";
parameter   LSB_METHOD     = "NORMAL";
parameter   tu66fe4        = "TRUE";
parameter   an12cda        = 8;
parameter   SHARE_CMEM     = "TRUE";
parameter   ld4f0d0        = "EBR";
parameter   MULTTYPE       = "DSP";
parameter   HIGHSPEED      = "FALSE";
parameter   FAMILY         = "ECP3";
localparam  vvf9165     = (YCBCR422=="TRUE") ? (HFTAPS+4) : HFTAPS;
localparam  shc3438     = (PARALLEL=="FALSE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  fp38a11     = (PARALLEL== "TRUE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  ww46ecd        = shc3438*DWIDTH;
localparam  ea4cc3f        = shc3438*DOUTWIDTH;
localparam  jp61807        = ntc03e(VINWIDTH-1);
localparam  dm660be     = (HFTAPS==1) ? DWIDTH : (DWIDTH + CWIDTH + ntc03e(HFTAPS-1));
localparam  thc8175        = ntc03e(HFPHASES-1);
localparam  kq6d12e     = HFTAPS*DWIDTH*shc3438;
localparam  ie2e22a       = HFTAPS*DWIDTH;
localparam  fce8a2     = HFTAPS*CWIDTH;
localparam  fc86396     = (HIGHSPEED=="TRUE") && (FAMILY=="ECP5U") && (HFTAPS>=4) && (PARALLEL=="TRUE") && (shc3438>1) && (YCBCR422=="FALSE");
localparam  fp2dea1       = 3+ntc03e(HFTAPS-1);
localparam  med43a4       = (HFTAPS<=4) ? 4 : (ntc03e(HFTAPS-1)+2);
localparam  ira4317      = fp2dea1-med43a4;
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input      [ww46ecd-1:0]   din;
input                      dvalid_in;
input                      frmsync_in;
input      [an12cda-1:0]   sw3b0ee;
input              [1:0]   ph8ed50;
input              [1:0]   th4ab8e;
input                      vx9571;
output     [ea4cc3f-1:0]   dout;
output                     dvalid_out;
output                     frmsync_out;
wire    [fce8a2-1:0]   qi21914;
wire    [fce8a2-1:0]   rt64507;
wire      [ie2e22a-1:0]   tw141ff[shc3438-1:0];
wire    [fce8a2-1:0]   ri3fef4[2:0];
wire    [kq6d12e-1:0]   tufbd11;
wire                       ykde88a;
wire                       byf4451;
wire    [dm660be-1:0]   vk11452[shc3438-1:0];
wire                       kd5149d[shc3438-1:0];
wire                       ho5276d[shc3438-1:0];
wire     [DOUTWIDTH-1:0]   wla10e8[shc3438-1:0];
wire                       cm43a2c[shc3438-1:0];
wire                       gbe8b05[shc3438-1:0];
reg     [dm660be-1:0]   zzc000[ira4317-1:0];
wire    [dm660be-1:0]   gq1a8;
genvar tj1c509,mt81ae;
reg ofe284f;
reg do1427d;
reg [ww46ecd - 1 : 0] lq5df83;
reg icff004;
reg uvf8021;
reg [an12cda - 1 : 0] wyacd21;
reg [1 : 0] blf67f0;
reg [1 : 0] bn9b2f7;
reg wjd97be;
reg [fce8a2 - 1 : 0] ip5efa8;
reg [fce8a2 - 1 : 0] gdbea2c;
reg [kq6d12e - 1 : 0] jea8b20;
reg rt45902;
reg mt2c817;
reg [dm660be - 1 : 0] ls205e7;
reg [2047:0] ec1a3c3;
wire [14:0] sud1e18;
localparam yz8f0c0 = 15,su78605 = 32'hfdffe30b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
generate   if(YCBCR422=="TRUE" && RESAMPLE=="AUTO" && HFTAPS>=4) begin      kf9f8b9_Scaler #(                     .SCALER_NAME   (SCALER_NAME   ),                     .NUM_PLANE     (shc3438    ),                     .ldd76ac      (fp38a11    ),                     .VINWIDTH      (VINWIDTH      ),                     .VOUTWIDTH     (VOUTWIDTH     ),                     .KERNEL        (KERNEL        ),                     .HFTAPS        (vvf9165    ),                     .HFPHASES      (HFPHASES      ),                     .EDGEMODE      (EDGEMODE      ),                     .EDGEVALUE     (EDGEVALUE     ),                     .DWIDTH        (DWIDTH        ),                     .CWIDTH        (CWIDTH        ),                     .DTYPE         (DTYPE         ),                     .PARALLEL      (PARALLEL      ),                     .YCBCR422      (YCBCR422      ),                     .YCBCR444      (YCBCR444      ),                     .ADAPTIVE      (ADAPTIVE      ),                     .CBANKS        (CBANKS        ),                     .EDGE_TH       (EDGE_TH       ),                     .RESAMPLE      (RESAMPLE      ),                     .SHARE_CMEM    (SHARE_CMEM    ),                     .ld4f0d0       (ld4f0d0       ),                     .an12cda       (an12cda       ),                     .FAMILY        (FAMILY        ))      en6f957 (                                          .clk           (clk           ),                     .rstn          (rstn          ),                     .ce            (ofe284f            ),                     .sr            (do1427d            ),                     .din           (lq5df83           ),                     .frmsync_in    (uvf8021    ),                     .dvalid_in     (icff004     ),                     .sw3b0ee     (wyacd21     ),                     .ph8ed50         (blf67f0         ),                     .vx9571   (wjd97be   ),                                          .zx40d74          (qi21914       ),                     .zxdde4e         (rt64507      ),                     .dout          (tufbd11       ),                     .dvalid_out    (ykde88a     ),                     .frmsync_out   (byf4451    ));   end else begin      gq158f0_Scaler #(                     .SCALER_NAME   (SCALER_NAME   ),                     .NUM_PLANE     (shc3438    ),                     .ldd76ac      (fp38a11    ),                     .VINWIDTH      (VINWIDTH      ),                     .VOUTWIDTH     (VOUTWIDTH     ),                     .KERNEL        (KERNEL        ),                     .HFTAPS        (vvf9165    ),                     .HFPHASES      (HFPHASES      ),                     .EDGEMODE      (EDGEMODE      ),                     .EDGEVALUE     (EDGEVALUE     ),                     .DWIDTH        (DWIDTH        ),                     .CWIDTH        (CWIDTH        ),                     .DTYPE         (DTYPE         ),                     .PARALLEL      (PARALLEL      ),                     .YCBCR422      (YCBCR422      ),                     .YCBCR444      (YCBCR444      ),                     .ADAPTIVE      (ADAPTIVE      ),                     .CBANKS        (CBANKS        ),                     .EDGE_TH       (EDGE_TH       ),                     .RESAMPLE      (RESAMPLE      ),                     .SHARE_CMEM    (SHARE_CMEM    ),                     .ld4f0d0       (ld4f0d0       ),                     .an12cda       (an12cda       ),                     .FAMILY        (FAMILY        ))      alccf9e (                                          .clk           (clk           ),                     .rstn          (rstn          ),                     .ce            (ofe284f            ),                     .sr            (do1427d            ),                     .din           (lq5df83           ),                     .frmsync_in    (uvf8021    ),                     .dvalid_in     (icff004     ),                     .sw3b0ee     (wyacd21     ),                     .ph8ed50         (blf67f0         ),                     .th4ab8e        (bn9b2f7        ),                     .vx9571   (wjd97be   ),                     .ir8ff4f      (3'b000        ),                                          .zx40d74          (qi21914       ),                     .zxdde4e         (rt64507      ),                     .dout          (tufbd11       ),                     .dvalid_out    (ykde88a     ),                     .frmsync_out   (byf4451    ));   end   if(HFTAPS==1) begin :uv4e0f4      assign ho5276d[0] = mt2c817;      assign kd5149d[0]  = rt45902;      for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :zz811ab         assign vk11452[tj1c509]    = jea8b20[(tj1c509+1)*DWIDTH-1:tj1c509*DWIDTH];      end   end else begin :je2fa08      for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :xwd0648         for (mt81ae=0;mt81ae<HFTAPS;mt81ae=mt81ae+1) begin :pu1bf11            assign tw141ff[tj1c509][(mt81ae+1)*DWIDTH-1:mt81ae*DWIDTH] = jea8b20[mt81ae*shc3438*DWIDTH + (tj1c509+1)*DWIDTH -1 : mt81ae*shc3438*DWIDTH + tj1c509*DWIDTH];         end      end      if(YCBCR422=="TRUE" && PARALLEL=="TRUE" && SHARE_CMEM=="FALSE") begin         assign ri3fef4[0] = gdbea2c;         assign ri3fef4[1] = ip5efa8;      end else begin         assign ri3fef4[0] = ip5efa8;         assign ri3fef4[1] = ip5efa8;         assign ri3fef4[2] = ip5efa8;      end      if(MULTTYPE=="LUT") begin :shccdae         for(tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :zm96719            pu14efe_Scaler #( .fa66a78        (DWIDTH        ),                              .vv4a821        (CWIDTH        ),                              .ned55c5        (dm660be    ),                              .dba0875         (HFTAPS        ),                              .pu43ae       (an12cda       ),                              .qi21d72         (DTYPE         ),                              .pueb90         (CTYPE         ),                              .wj75c82      (an178df    ),                              .FAMILY        (FAMILY        ))            vi47080          (                                .clk           (clk           ),                              .rstn          (rstn          ),                              .ce            (ofe284f            ),                              .sr            (do1427d            ),                              .tuf19e8           (ri3fef4[tj1c509]  ),                              .din           (tw141ff[tj1c509]  ),                              .dvalid_in     (rt45902     ),                              .zm8cf43       (rt45902     ),                              .ay67a1b     (rt45902     ),                              .xl3d0d9    (mt2c817    ),                              .pu1bac0       (              ),                                                            .dout          (vk11452[tj1c509]    ),                              .fa580fa   (ho5276d[tj1c509] ),                              .fac07d3      (                 ),                              .dvalid_out    (kd5149d[tj1c509]  ));         end      end else if(fc86396==1) begin :oh9ac26         ecb3f7f_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (dm660be    ),                           .dba0875         (HFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .FAMILY        (FAMILY        ))         wj4172d       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (ri3fef4[0]   ),                           .din           (tw141ff[0]   ),                           .lqc5a6d           (tw141ff[1]   ),                           .dvalid_in     (rt45902     ),                           .xl3d0d9    (mt2c817    ),                           .pu1bac0       (              ),
                                                      .dout          (vk11452[0]    ),                           .fc99f8c          (vk11452[1]    ),                           .fa580fa   (ho5276d[0] ),                           .fac07d3      (                ),                           .dvalid_out    (kd5149d[0]  ));         if(shc3438==3) begin :hd3239e            blf6c5b_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (dm660be    ),                           .dba0875         (HFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .wj75c82      (an178df    ),                           .FAMILY        (FAMILY        ))            vi47080       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (ri3fef4[2]   ),                           .din           (tw141ff[2]   ),                           .dvalid_in     (rt45902     ),                           .zm8cf43       (rt45902     ),                           .ay67a1b     (rt45902     ),                           .xl3d0d9    (mt2c817    ),                           .pu1bac0       (              ),                                                      .dout          (gq1a8     ),                           .fa580fa   (ho5276d[2] ),                           .fac07d3      (                ),                           .dvalid_out    (kd5149d[2]  ));            for (tj1c509=0;tj1c509<ira4317;tj1c509=tj1c509+1) begin :pscf19b               always @(posedge clk or negedge rstn)               begin                  if (!rstn) begin                     zzc000[tj1c509] <= {dm660be{1'b0}};                  end else if(ofe284f) begin                     if (do1427d) begin                        zzc000[tj1c509] <= {dm660be{1'b0}};                     end else begin                        zzc000[tj1c509] <= (tj1c509==0) ? ls205e7 : zzc000[tj1c509-1];                     end                  end               end            end            assign vk11452[2] = zzc000[ira4317-1];         end      end else begin :wy1fd07         for(tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :qib912a            blf6c5b_Scaler #(  .fa66a78        (DWIDTH        ),                           .vv4a821        (CWIDTH        ),                           .ned55c5        (dm660be    ),                           .dba0875         (HFTAPS        ),                           .pu43ae       (an12cda       ),                           .qi21d72         (DTYPE         ),                           .pueb90         (CTYPE         ),                           .wj75c82      (an178df    ),                           .FAMILY        (FAMILY        ))            vi47080       (                             .clk           (clk           ),                           .rstn          (rstn          ),                           .ce            (ofe284f            ),                           .sr            (do1427d            ),                           .tuf19e8           (ri3fef4[tj1c509]  ),                           .din           (tw141ff[tj1c509]  ),                           .dvalid_in     (rt45902     ),                           .zm8cf43       (rt45902     ),                           .ay67a1b     (rt45902     ),                           .xl3d0d9    (mt2c817    ),                           .pu1bac0       (              ),                                                      .dout          (vk11452[tj1c509]    ),                           .fa580fa   (ho5276d[tj1c509] ),                           .fac07d3      (                 ),                           .dvalid_out    (kd5149d[tj1c509]  ));         end      end   end   for(tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :vv6b938      ald9e66_Scaler  #(    .DWIDTH        (dm660be    ),                     .tj37f23      (1             ),                     .icfa6b0 (MSB_METHOD    ),                     .uvd3581 (LSB_METHOD    ),                     .oh9ac0c      (CTYPE         ),                     .ald6065     (OTYPE         ),                     .lfb032c     (DIN_POINTS    ),                     .lf81966       (COEFF_POINTS  ),                     .rvcb37    (DOUT_POINTS   ),                     .qv2cdfc     (an12cda       ),                     .tu66fe4       (tu66fe4       ),                     .DOUTWIDTH     (DOUTWIDTH     ))      rv2dde1 (                         .rstn          (rstn          ),                     .clk           (clk           ),                     .ce            (ofe284f            ),                     .sr            (do1427d            ),                     .mg346eb        (kd5149d[0]  ),                     .qia3758       (ho5276d[0] ),                     .din           (vk11452[tj1c509]    ),                     .pu1bac0       (                 ),                                          .dvalid_out    (cm43a2c[tj1c509]    ),                     .fa580fa   (gbe8b05[tj1c509]   ),                     .fac07d3      (                 ),                     .dout          (wla10e8[tj1c509]      ));   end   assign frmsync_out = gbe8b05[0];   assign dvalid_out  = cm43a2c[0];   for (tj1c509=0;tj1c509<shc3438;tj1c509=tj1c509+1) begin :jp50cf8      assign dout[(tj1c509+1)*DOUTWIDTH-1:tj1c509*DOUTWIDTH]   = wla10e8[tj1c509];   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};icff004<=sud1e18[3];uvf8021<=sud1e18[4];wyacd21<={sw3b0ee>>1,sud1e18[5]};blf67f0<={ph8ed50>>1,sud1e18[6]};bn9b2f7<={th4ab8e>>1,sud1e18[7]};wjd97be<=sud1e18[8];ip5efa8<={qi21914>>1,sud1e18[9]};gdbea2c<={rt64507>>1,sud1e18[10]};jea8b20<={tufbd11>>1,sud1e18[11]};rt45902<=sud1e18[12];mt2c817<=sud1e18[13];ls205e7<={gq1a8>>1,sud1e18[14]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=dvalid_in;ec1a3c3[2040]<=frmsync_in;ec1a3c3[2032]<=sw3b0ee[0];ec1a3c3[2016]<=ph8ed50[0];ec1a3c3[1985]<=th4ab8e[0];ec1a3c3[1922]<=vx9571;ec1a3c3[1796]<=qi21914[0];ec1a3c3[1544]<=rt64507[0];ec1a3c3[1040]<=tufbd11[0];ec1a3c3[1023]<=ce;ec1a3c3[130]<=gq1a8[0];ec1a3c3[65]<=byf4451;ec1a3c3[32]<=ykde88a;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module gq158f0_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  din, 
                  dvalid_in, 
                  frmsync_in, 
                  sw3b0ee, 
                  ir8ff4f,
                  ph8ed50,
                  th4ab8e,
                  vx9571,
                  zx40d74,
                  zxdde4e,
                  dout, 
                  dvalid_out, 
                  frmsync_out);
parameter   SCALER_NAME    = "SCALER";
parameter   NUM_PLANE      = 3;
parameter   ldd76ac       = 1;
parameter   VINWIDTH       = 320;
parameter   VOUTWIDTH      = 320;
parameter   KERNEL         = "LANCZOS";
parameter   HFTAPS         = 4;
parameter   HFPHASES       = 256;
parameter   EDGEMODE       = "COPY";
parameter   EDGEVALUE      = 0;
parameter   DWIDTH         = 8;
parameter   CWIDTH         = 8;
parameter   DTYPE          = "SIGNED";
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   ADAPTIVE       = "FALSE";
parameter   CBANKS         = 1;
parameter   EDGE_TH        = 8;
parameter   RESAMPLE       = "AVERAGE";
parameter   an12cda        = 8;
parameter   SHARE_CMEM     = "TRUE";
parameter   ld4f0d0        = "EBR";
parameter   FAMILY         = "ECP2M";
localparam  ho79558    = (YCBCR422=="TRUE") ? (HFTAPS-4) : HFTAPS;
localparam  jp61807        = ntc03e(VINWIDTH-1);
localparam  blf6a60        = ntc03e(VOUTWIDTH-1);
localparam  thc8175        = ntc03e(HFPHASES-1);
localparam  ww46ecd        = DWIDTH*NUM_PLANE;
localparam  kq6d12e     = ho79558*ww46ecd;
localparam  fce8a2     = ho79558*CWIDTH;
localparam  yk68275     = {SCALER_NAME,"coeffh.rom"};
localparam  pu2f6d0       = (HFTAPS-1)/2;
localparam  qi82e13      = HFTAPS-1-pu2f6d0;
localparam  qg67901        = (  pu2f6d0 <=1) ? 1 : ntc03e(  pu2f6d0-1);
localparam  je135b        = ( qi82e13 <=1) ? 1 : ntc03e( qi82e13-1);
localparam  zxc2622      = (ldd76ac==1) ? 1 : ntc03e(ldd76ac-1);
localparam  jr9bd3b       = (YCBCR444=="TRUE") ? (ld4f0d0=="EBR") ? 4 : 3                                                : (ld4f0d0=="EBR") ? 5 : 4;
localparam  psdf2d0        = ntc03e(jr9bd3b-1);
localparam  jp617b9        = ldd76ac*(HFTAPS+1);
localparam  mrf73d5      = thc8175+3;
localparam  jp5a0b1       = (CBANKS==4) ? 2 : 1;
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input      [ww46ecd-1:0]   din;
input                      dvalid_in;
input                      frmsync_in;
input      [an12cda-1:0]   sw3b0ee;
input              [2:0]   ir8ff4f;
input              [1:0]   ph8ed50;
input              [1:0]   th4ab8e;
input                      vx9571;
output  [fce8a2-1:0]   zx40d74;
output  [fce8a2-1:0]   zxdde4e;
output  [kq6d12e-1:0]   dout;
output                     frmsync_out;
output                     dvalid_out;
reg      [zxc2622-1:0]   zxfc559;
wire                       wje2ace;
reg        [an12cda-1:0]   kdc615b;
reg        [ww46ecd-1:0]   nr716c0[jp617b9-1:0];
reg         [DWIDTH-1:0]   dzd81bc[jp617b9-1:0];
reg         [DWIDTH-1:0]   mg5b2a[jp617b9-1:0];
reg         [DWIDTH-1:0]   qi3bd8c[jp617b9-1:0];
wire       [ww46ecd-1:0]   vv6187f[HFTAPS-1:0];
wire       [ww46ecd-1:0]   ba1f55[HFTAPS-1:0];
reg        [ww46ecd-1:0]   wweaac0[HFTAPS-1:0];
wire    [kq6d12e-1:0]   wje26be;
wire    [kq6d12e-1:0]   ir856eb;
reg     [kq6d12e-1:0]   anbe9af;
reg     [kq6d12e-1:0]   aaa6be3;
reg     [kq6d12e-1:0]   rvaf8cb;
reg     [kq6d12e-1:0]   the32fa;
reg     [kq6d12e-1:0]   gocbeb7;
reg     [kq6d12e-1:0]   doedf0;
reg                [7:0]   dm76f82;
reg                [7:0]   xyb7c12;
reg                        cbbe092;
wire        [HFTAPS-1:0]   sw824a8;
wire                       ux12541;
reg        [qg67901-1:0]   gd95061[1:0];
wire       [qg67901-1:0]   uv4186b;
reg        [je135b-1:0]   rt61aee[1:0];
wire       [je135b-1:0]   rt6bbb4;
reg         [HFTAPS-1:0]   byeed3a[1:0];
reg         [HFTAPS-1:0]   epb4e9a[1:0];
reg       [pu2f6d0-1:0]   ls3a6aa;
reg                        shd3553;
reg        [jp61807-1:0]   byd54e5;
wire       [jp5a0b1-1:0]  zzb59e5;
wire                       ukacf2f;
wire       [thc8175-1:0]   tw2014a;
wire                       do9cc28;
wire                       nre6142;
wire                       ri30a16;
wire                       lq63f15;
wire                       do898ad;
wire                       go4c56b;
wire                       tj9e1ad;
wire                       pu86b71;
reg                        ngad608;
reg        [thc8175-1:0]   dm5821e;
reg        [thc8175-1:0]   kf8798;
reg        [thc8175-1:0]   xy1e620;
reg        [thc8175-1:0]   ie98817;
reg        [thc8175-1:0]   ls205c0;
reg        [thc8175-1:0]   yz1701c;
reg                        twb80e4;
reg                        zkc0722;
reg                        vx3912;
reg                        ph1c896;
reg                        yk67978;
reg                [7:0]   vx225b3;
reg         [CWIDTH-1:0]   kqfadc6[1:0];
wire       [thc8175-1:0]   oub3d59;
wire    [fce8a2-1:0]   wwc1c7c;
reg     [fce8a2-1:0]   kq591c4[1:0];
reg     [fce8a2-1:0]   vi4710f;
reg     [fce8a2-1:0]   cmc43df;
reg               [17:0]   qi21ef8;
wire        [DWIDTH-1:0]   th7be01;
wire        [DWIDTH-1:0]   gbf8072;
genvar tj1c509,mt81ae,bae513;
reg ofe284f;
reg do1427d;
reg [ww46ecd - 1 : 0] lq5df83;
reg icff004;
reg uvf8021;
reg [an12cda - 1 : 0] wyacd21;
reg [2 : 0] czd6dba;
reg [1 : 0] blf67f0;
reg [1 : 0] bn9b2f7;
reg wjd97be;
reg [zxc2622 - 1 : 0] nrf30e7;
reg co9873f;
reg [an12cda - 1 : 0] jr3cde;
reg [kq6d12e - 1 : 0] db84acd;
reg [kq6d12e - 1 : 0] th5a83e;
reg [kq6d12e - 1 : 0] blcdec0;
reg [kq6d12e - 1 : 0] ld7b03c;
reg [kq6d12e - 1 : 0] nec0f3f;
reg [kq6d12e - 1 : 0] yz3cfdc;
reg [kq6d12e - 1 : 0] je3f72d;
reg [kq6d12e - 1 : 0] lddd12a;
reg [7 : 0] cze8957;
reg [7 : 0] mr44abc;
reg xy255e5;
reg [HFTAPS - 1 : 0] by5795b;
reg ukbcadb;
reg [qg67901 - 1 : 0] wy2b6c9;
reg [je135b - 1 : 0] kqdb244;
reg [pu2f6d0 - 1 : 0] qtc9105;
reg dm4882c;
reg [jp61807 - 1 : 0] ng20b1c;
reg [jp5a0b1 - 1 : 0] ls9c528;
reg cze2943;
reg [thc8175 - 1 : 0] shfd6af;
reg jcda376;
reg god1bb2;
reg ec8dd90;
reg an8fcc3;
reg pffc43f;
reg uve21fe;
reg gqfd2d;
reg byf4b46;
reg tw3fd00;
reg [thc8175 - 1 : 0] vif4012;
reg [thc8175 - 1 : 0] uk497;
reg [thc8175 - 1 : 0] cb125c5;
reg [thc8175 - 1 : 0] wy97161;
reg [thc8175 - 1 : 0] fac5843;
reg [thc8175 - 1 : 0] fn610dd;
reg kf86ef;
reg go4377c;
reg ba1bbe1;
reg blddf0b;
reg ls14a1d;
reg [7 : 0] dm7c2f1;
reg [thc8175 - 1 : 0] dobc53;
reg [fce8a2 - 1 : 0] wl8f384;
reg [fce8a2 - 1 : 0] cm53515;
reg [fce8a2 - 1 : 0] qgd4545;
reg [17 : 0] lsa2a29;
reg [DWIDTH - 1 : 0] twa8a59;
reg [DWIDTH - 1 : 0] yz29656;
reg [2047:0] ec1a3c3;
wire [61:0] sud1e18;
localparam yz8f0c0 = 62,su78605 = 32'hfdffd28b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      qi21ef8 <= {18{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         qi21ef8 <= {18{1'b0}};      end else if(wyacd21[2]) begin         qi21ef8 <= {18{1'b0}};      end else if(icff004 && co9873f) begin         qi21ef8 <= lsa2a29 + 1;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ls3a6aa <= {pu2f6d0{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         ls3a6aa <= {pu2f6d0{1'b0}};      end else if(icff004 && co9873f) begin         ls3a6aa <= qtc9105 + 1;      end   end
end
generate   if(HFTAPS==1) begin      always @(clk) begin         shd3553 <= 1'b1;      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            shd3553 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               shd3553 <= 1'b0;            end else if(icff004 && (qtc9105==HFTAPS-pu2f6d0-2) && co9873f) begin               shd3553 <= 1'b1;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      dm76f82   <= {8{1'b0}};      xyb7c12 <= {8{1'b0}};      vx225b3<= {8{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         dm76f82   <= {8{1'b0}};         xyb7c12 <= {8{1'b0}};         vx225b3<= {8{1'b0}};      end else begin         dm76f82   <= {cze8957[6:0],uvf8021};         xyb7c12 <= {mr44abc[6:0],xy255e5};         vx225b3<= {dm7c2f1[6:0],ls14a1d};      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      zxfc559 <= {zxc2622{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         zxfc559 <= {zxc2622{1'b0}};      end else if(pffc43f) begin         zxfc559 <= {zxc2622{1'b0}};      end else if(!an8fcc3 && icff004) begin         if(nrf30e7==ldd76ac-1) begin            zxfc559 <= {zxc2622{1'b0}};         end else begin            zxfc559 <= nrf30e7 + 1;         end      end else if(an8fcc3 && uve21fe) begin         if(nrf30e7==ldd76ac-1) begin            zxfc559 <= {zxc2622{1'b0}};         end else begin            zxfc559 <= nrf30e7 + 1;         end      end   end
end
assign wje2ace = (nrf30e7==ldd76ac-1);
assign pu86b71           = wyacd21[0];
assign go4c56b     = wyacd21[1];
assign do898ad   = wyacd21[2];
assign lq63f15         = wyacd21[3];
assign ri30a16          = wyacd21[4];
assign nre6142          = wyacd21[5];
assign do9cc28          = wyacd21[6];
assign tj9e1ad       = wyacd21[7];
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kdc615b <= {an12cda{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kdc615b <= {an12cda{1'b0}};      end else begin         kdc615b <= wyacd21;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ngad608    <= 1'b0;      cbbe092 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ngad608    <= 1'b0;         cbbe092 <= 1'b0;      end else begin         ngad608    <= byf4b46;         cbbe092 <= tw3fd00;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      twb80e4 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         twb80e4 <= 1'b0;      end else if(PARALLEL=="TRUE") begin         twb80e4 <= 1'b0;      end else if(pffc43f) begin         twb80e4 <= 1'b0;      end else if(icff004) begin         twb80e4   <= ~kf86ef;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      zkc0722   <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         zkc0722   <= 1'b0;      end else if(PARALLEL=="TRUE") begin         zkc0722   <= 1'b0;      end else if(uvf8021) begin         zkc0722   <= 1'b0;      end else if(tw3fd00) begin         zkc0722   <= ~go4377c;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ph1c896 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ph1c896 <= 1'b0;      end else if(pffc43f) begin         ph1c896 <= 1'b0;      end else if(icff004 && (kf86ef==1'b0)) begin         ph1c896   <= ~blddf0b;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yk67978   <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         yk67978   <= 1'b0;      end else if(uvf8021) begin         yk67978   <= 1'b0;      end else if(tw3fd00 && (go4377c==1'b0)) begin         yk67978   <= ~ls14a1d;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      vx3912 <= 1'b1;   end else if(ofe284f) begin      if(do1427d) begin         vx3912 <= 1'b1;      end else if(pffc43f) begin         vx3912 <= 1'b1;      end else if(icff004 && (blddf0b==1'b1) && (kf86ef==1'b0)) begin         vx3912 <= 1'b0;      end   end
end
generate   if(pu2f6d0==0) begin        always @(posedge clk or negedge rstn) begin         if(!rstn) begin            byeed3a[0] <= {HFTAPS{1'b0}};            byeed3a[1] <= {HFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               byeed3a[0] <= {HFTAPS{1'b0}};               byeed3a[1] <= {HFTAPS{1'b0}};            end else begin               if(pffc43f) begin                  byeed3a[0] <= {HFTAPS{1'b0}};               end else if(an8fcc3 && uve21fe && jcda376 && co9873f) begin                  byeed3a[0] <= byeed3a[0]<<1;               end               byeed3a[1] <= byeed3a[0];            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            byeed3a[0] <= {{pu2f6d0{1'b1}},{(HFTAPS-pu2f6d0){1'b0}}};            byeed3a[1] <= {{pu2f6d0{1'b1}},{(HFTAPS-pu2f6d0){1'b0}}};         end else if(ofe284f) begin            if(do1427d) begin               byeed3a[0] <= {{pu2f6d0{1'b1}},{(HFTAPS-pu2f6d0){1'b0}}};               byeed3a[1] <= {{pu2f6d0{1'b1}},{(HFTAPS-pu2f6d0){1'b0}}};            end else begin               if(pffc43f) begin                  byeed3a[0] <= {{pu2f6d0{1'b1}},{(HFTAPS-pu2f6d0){1'b0}}};                              end else if(an8fcc3 && uve21fe && jcda376 && co9873f) begin                  byeed3a[0] <= byeed3a[0]<<1;               end               byeed3a[1] <= byeed3a[0];            end         end      end   end
endgenerate
generate   if(HFTAPS==1) begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            epb4e9a[0] <= {HFTAPS{1'b0}};            epb4e9a[1] <= {HFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               epb4e9a[0] <= {HFTAPS{1'b0}};               epb4e9a[1] <= {HFTAPS{1'b0}};            end         end      end   end else begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            epb4e9a[0] <= {HFTAPS{1'b0}};            epb4e9a[1] <= {HFTAPS{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               epb4e9a[0] <= {HFTAPS{1'b0}};               epb4e9a[1] <= {HFTAPS{1'b0}};            end else begin               if(pffc43f) begin                  epb4e9a[0] <= {HFTAPS{1'b0}};               end else if(an8fcc3 && uve21fe && co9873f) begin                                    if(god1bb2) begin                     epb4e9a[0] <= {epb4e9a[0][HFTAPS-2:0],1'b1};                  end else begin                     epb4e9a[0] <= {HFTAPS{1'b0}};                  end               end               epb4e9a[1] <= epb4e9a[0];            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      gd95061[0] <= {qg67901{1'b0}};      gd95061[1] <= {qg67901{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         gd95061[0] <= {qg67901{1'b0}};         gd95061[1] <= {qg67901{1'b0}};      end else begin         if(pffc43f) begin            gd95061[0] <= {qg67901{1'b0}};                  end else if(an8fcc3 && uve21fe && jcda376 && co9873f) begin            gd95061[0] <= gd95061[0] + 1;         end         gd95061[1] <= gd95061[0];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      rt61aee[0] <= {je135b{1'b0}};      rt61aee[1] <= {je135b{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         rt61aee[0] <= {je135b{1'b0}};         rt61aee[1] <= {je135b{1'b0}};      end else begin         if(an8fcc3 && uve21fe && co9873f) begin                        if(ec8dd90) begin               rt61aee[0] <= {je135b{1'b0}};            end else begin               rt61aee[0] <= rt61aee[0] + 1;            end         end         rt61aee[1] <= rt61aee[0];      end   end
end
generate   for(tj1c509=HFTAPS-1-pu2f6d0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin : fp91092      assign sw824a8[tj1c509] = byeed3a[1][tj1c509];   end   for(tj1c509=0;tj1c509<qi82e13;tj1c509=tj1c509+1) begin : ir853b      assign sw824a8[tj1c509] = epb4e9a[1][tj1c509];   end   assign uv4186b   = gd95061[1];   assign rt6bbb4   = rt61aee[1];   assign ux12541 = tw3fd00;
endgenerate
generate   if(YCBCR422=="TRUE") begin :vv6412c      for(tj1c509=0;tj1c509<HFTAPS+1;tj1c509=tj1c509+1) begin :xy3a6a0         always @(posedge clk or negedge rstn) begin            if(!rstn) begin               dzd81bc[tj1c509] <= {DWIDTH{1'b0}};            end else if(ofe284f == 1'b1) begin               if(do1427d == 1'b1) begin                  dzd81bc[tj1c509] <= {DWIDTH{1'b0}};               end else if(PARALLEL=="TRUE") begin                  if(icff004) begin                     if(tj1c509==0) begin                        dzd81bc[0] <= lq5df83>>DWIDTH;                     end else begin                        dzd81bc[tj1c509] <= dzd81bc[tj1c509-1];                     end                  end               end else if(PARALLEL=="FALSE") begin                  if(icff004 && kf86ef) begin                     if(tj1c509==0) begin                        dzd81bc[0] <= lq5df83[DWIDTH-1:0];                     end else begin                        dzd81bc[tj1c509] <= dzd81bc[tj1c509-1];                     end                  end               end            end         end         always @(posedge clk or negedge rstn) begin            if(!rstn) begin               mg5b2a[tj1c509] <= {DWIDTH{1'b0}};            end else if(ofe284f == 1'b1) begin               if(do1427d == 1'b1) begin                  mg5b2a[tj1c509] <= {DWIDTH{1'b0}};               end else if(icff004 && (kf86ef==1'b0)) begin                  if(tj1c509==0) begin                     if(blddf0b==1'b0 && gqfd2d==1'b0) begin                        mg5b2a[0] <= lq5df83[DWIDTH-1:0];                     end                  end else if(tj1c509==1) begin                     if((blddf0b==1'b0) && ba1bbe1 && gqfd2d==1'b0) begin                        mg5b2a[1] <= lq5df83[DWIDTH-1:0];                     end else if(blddf0b==1'b0 && gqfd2d==1'b0) begin                        if(RESAMPLE=="NEAREST") begin                           mg5b2a[1] <= mg5b2a[0];                        end else if(KERNEL=="NEAREST" || KERNEL=="BILINEAR") begin                            mg5b2a[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,mg5b2a[0]} + 1)>>1;                        end else if(RESAMPLE=="AUTO") begin                           if(czd6dba==3'b001) begin                              mg5b2a[1] <= lq5df83[DWIDTH-1:0];                           end else if(czd6dba==3'b100) begin                              mg5b2a[1] <= mg5b2a[0];                           end else begin                              if(DTYPE=="SIGNED") begin                                  mg5b2a[1] <= ({lq5df83[DWIDTH-1],lq5df83[DWIDTH-1:0]} + {mg5b2a[0][DWIDTH-1],mg5b2a[0]} + 1)>>1;                              end else begin                                             mg5b2a[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,mg5b2a[0]} + 1)>>1;                              end                           end                        end else begin                           if(DTYPE=="SIGNED") begin                               mg5b2a[1] <= ({lq5df83[DWIDTH-1],lq5df83[DWIDTH-1:0]} + {mg5b2a[0][DWIDTH-1],mg5b2a[0]} + 1)>>1;                           end else begin                                          mg5b2a[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,mg5b2a[0]} + 1)>>1;                           end                        end                     end else begin                        mg5b2a[1] <= mg5b2a[0];                     end                  end else begin                     mg5b2a[tj1c509] <= mg5b2a[tj1c509-1];                  end               end            end         end         always @(posedge clk or negedge rstn) begin            if(!rstn) begin               qi3bd8c[tj1c509] <= {DWIDTH{1'b0}};            end else if(ofe284f == 1'b1) begin               if(do1427d == 1'b1) begin                  qi3bd8c[tj1c509] <= {DWIDTH{1'b0}};               end else if(icff004 && (kf86ef==1'b0)) begin                  if(tj1c509==0) begin                     if(blddf0b==1'b1 && gqfd2d==1'b0) begin                        qi3bd8c[0] <= lq5df83[DWIDTH-1:0];                     end                  end else if(tj1c509==1) begin                     if((blddf0b==1'b1) && ba1bbe1 && gqfd2d==1'b0) begin                        qi3bd8c[1] <= lq5df83[DWIDTH-1:0];                     end else if(blddf0b==1'b1 && gqfd2d==1'b0) begin                        if(RESAMPLE=="NEAREST") begin                           qi3bd8c[1] <= qi3bd8c[0];                        end else if(KERNEL=="NEAREST" || KERNEL=="BILINEAR") begin                            qi3bd8c[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,qi3bd8c[0][DWIDTH-1:0]} + 1)>>1;                        end else if(RESAMPLE=="AUTO") begin                                          if(czd6dba==3'b001) begin                              qi3bd8c[1] <= lq5df83[DWIDTH-1:0];                           end else if(czd6dba==3'b100) begin                              qi3bd8c[1] <= qi3bd8c[0];                           end else begin                              if(DTYPE=="SIGNED") begin                                  qi3bd8c[1] <= ({lq5df83[DWIDTH-1],lq5df83[DWIDTH-1:0]} + {qi3bd8c[0][DWIDTH-1],qi3bd8c[0]} + 1)>>1;                              end else begin                                             qi3bd8c[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,qi3bd8c[0]} + 1)>>1;                              end                           end                        end else begin                           if(DTYPE=="SIGNED") begin                               qi3bd8c[1] <= ({lq5df83[DWIDTH-1],lq5df83[DWIDTH-1:0]} + {qi3bd8c[0][DWIDTH-1],qi3bd8c[0][DWIDTH-1:0]} + 1)>>1;                           end else begin                                          qi3bd8c[1] <= ({1'b0,lq5df83[DWIDTH-1:0]} + {1'b0,qi3bd8c[0][DWIDTH-1:0]} + 1)>>1;                           end                        end                     end else begin                        qi3bd8c[1] <= qi3bd8c[0];                     end                  end else begin                     qi3bd8c[tj1c509] <= qi3bd8c[tj1c509-1];                  end               end            end         end      end      for(tj1c509=0;tj1c509<ho79558;tj1c509=tj1c509+1) begin :ux823f         assign wje26be[(tj1c509+1)*ww46ecd-1:tj1c509*ww46ecd] = wweaac0[tj1c509+2];      end      for(tj1c509=1;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin :qv9a63c         if(PARALLEL=="TRUE") begin            assign vv6187f[tj1c509][2*DWIDTH-1:DWIDTH] = dzd81bc[tj1c509];            assign vv6187f[tj1c509][  DWIDTH-1:     0] = (ls14a1d) ? qi3bd8c[tj1c509-1] : mg5b2a[tj1c509];         end else begin            assign vv6187f[tj1c509] = (go4377c) ? dzd81bc[tj1c509] : ((ls14a1d) ? qi3bd8c[tj1c509-1] : mg5b2a[tj1c509]);         end      end   end else begin :jc7cfc5       for(tj1c509=0;tj1c509<HFTAPS+1;tj1c509=tj1c509+1) begin :rg5d751         for(mt81ae=0;mt81ae<ldd76ac;mt81ae=mt81ae+1) begin : uv5b62f            always @(posedge clk or negedge rstn) begin               if(!rstn) begin                  nr716c0[tj1c509*ldd76ac+mt81ae] <= {ww46ecd{1'b0}};               end else if(ofe284f == 1'b1) begin                  if(do1427d == 1'b1) begin                     nr716c0[tj1c509*ldd76ac+mt81ae] <= {ww46ecd{1'b0}};                  end else if(icff004 == 1'b1) begin                     if(tj1c509==0 && mt81ae==0) begin                        nr716c0[0] <= lq5df83;                     end else begin                        nr716c0[tj1c509*ldd76ac+mt81ae] <= nr716c0[tj1c509*ldd76ac+mt81ae-1];                     end                  end else if(byf4b46 && (ldd76ac>1)) begin                     if(mt81ae==0) begin                        nr716c0[tj1c509*ldd76ac+mt81ae] <= nr716c0[tj1c509*ldd76ac+ldd76ac-1];                     end else begin                        nr716c0[tj1c509*ldd76ac+mt81ae] <= nr716c0[tj1c509*ldd76ac+mt81ae-1];                     end                  end               end            end          end      end      for(tj1c509=0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin :yxfd9d0         assign vv6187f[tj1c509] = nr716c0[tj1c509*ldd76ac];         assign wje26be[(tj1c509+1)*ww46ecd-1:tj1c509*ww46ecd] = wweaac0[tj1c509];      end   end    for(tj1c509=0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin :sw3ec24
      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            wweaac0[tj1c509] <= {ww46ecd{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               wweaac0[tj1c509] <= {ww46ecd{1'b0}};            end else if(ukbcadb) begin               wweaac0[tj1c509] <= (by5795b[tj1c509]==1'b1) ? ba1f55[tj1c509] : vv6187f[tj1c509];            end         end      end   end   if(EDGEMODE=="VALUE") begin      for(tj1c509=0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin : ldd866a         assign ba1f55[tj1c509] = EDGEVALUE;      end   end else if(EDGEMODE=="COPY") begin      for(tj1c509=0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin : yzab6d6         assign ba1f55[tj1c509] = (tj1c509<qi82e13) ? vv6187f[kqdb244+1] : vv6187f[HFTAPS-1-pu2f6d0+wy2b6c9];      end   end else if(EDGEMODE=="MIRROR") begin      for(tj1c509=0;tj1c509<HFTAPS;tj1c509=tj1c509+1) begin : wyfae8         assign ba1f55[tj1c509] = (tj1c509<qi82e13) ? vv6187f[(kqdb244<<1)+1-tj1c509] : vv6187f[(qi82e13<<1)+1-tj1c509+(wy2b6c9<<1)];      end   end
endgenerate
generate   if(ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") begin      assign dout       = db84acd;      assign frmsync_out= cze8957[1];      assign dvalid_out = xy255e5;   end else if(YCBCR444=="TRUE") begin       assign dout       = th5a83e;       assign frmsync_out= (ld4f0d0=="EBR") ? cze8957[5]   : cze8957[4];      assign dvalid_out = (ld4f0d0=="EBR") ? mr44abc[3] : mr44abc[2];   end else begin                                                assign dout       = th5a83e;       assign frmsync_out= (ld4f0d0=="EBR") ? cze8957[6]   : cze8957[5];      assign dvalid_out = (ld4f0d0=="EBR") ? mr44abc[4] : mr44abc[3];   end   if(ADAPTIVE=="TRUE" && KERNEL=="LANCZOS") begin                                                                                                                         for(tj1c509=0;tj1c509<ho79558;tj1c509=tj1c509+1) begin :pf648a8         pmi_distributed_shift_reg  #( .pmi_data_width      (ww46ecd    ),                                       .pmi_regmode         ("reg"      ),                                       .pmi_shiftreg_type   ("fixed"    ),                                       .pmi_num_shift       (jr9bd3b-1 ),                                       .pmi_num_width       (psdf2d0    ),                                                                              .pmi_max_shift       (jr9bd3b-1 ),                                       .pmi_max_width       (psdf2d0    ),                                                                              .pmi_init_file       ("none"     ),                                       .pmi_init_file_format("binary"   ),                                       .pmi_family          (FAMILY     ),                                       .module_type         ("pmi_distributed_shift_reg"))         gd8f289                 ( .Din      (wje26be[(tj1c509+1)*ww46ecd-1:tj1c509*ww46ecd]   ),                                       .Addr     ({psdf2d0{1'b0}}       ),                                       .Clock    (clk                   ),                                       .ClockEn  (ce                    ),                                       .Reset    (~rstn || sr           ),                                       .Q        (ir856eb[(tj1c509+1)*ww46ecd-1:tj1c509*ww46ecd]  ));      end   end
endgenerate
generate   if(SHARE_CMEM=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            kq591c4[0] <= {fce8a2{1'b0}};            kq591c4[1] <= {fce8a2{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               kq591c4[0] <= {fce8a2{1'b0}};               kq591c4[1] <= {fce8a2{1'b0}};            end else begin               kq591c4[0] <= wyacd21[an12cda-1:an12cda-fce8a2];               kq591c4[1] <= kq591c4[0];            end         end      end      assign zx40d74       = kq591c4[1];   end else if(YCBCR422=="TRUE" && PARALLEL=="TRUE") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            vi4710f <= {fce8a2{1'b0}};            cmc43df<= {fce8a2{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               vi4710f <= {fce8a2{1'b0}};               cmc43df<= {fce8a2{1'b0}};            end else begin               vi4710f <= wl8f384;               if(ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") begin                  if(~ls14a1d) cmc43df <= wl8f384;               end else if(ADAPTIVE=="TRUE" &&  KERNEL=="LANCZOS") begin                  if(ld4f0d0=="EBR") begin                     if(~dm7c2f1[4]) cmc43df <= wl8f384;                  end else begin                     if(~dm7c2f1[3]) cmc43df <= wl8f384;                  end               end            end         end      end      assign zx40d74       = cm53515;      assign zxdde4e      = qgd4545;      assign tw2014a   = wyacd21[an12cda-1:an12cda-thc8175];   end else begin      assign zx40d74       = wl8f384;      assign tw2014a   = jr3cde[an12cda-1:an12cda-thc8175];   end   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         dm5821e <= {kq6d12e{1'b0}};         kf8798<= {kq6d12e{1'b0}};         xy1e620<= {kq6d12e{1'b0}};         ie98817<= {kq6d12e{1'b0}};         ls205c0<= {kq6d12e{1'b0}};         yz1701c<= {kq6d12e{1'b0}};      end else if(ofe284f) begin         if(do1427d) begin            dm5821e <= {kq6d12e{1'b0}};            kf8798<= {kq6d12e{1'b0}};            xy1e620<= {kq6d12e{1'b0}};            ie98817<= {kq6d12e{1'b0}};            ls205c0<= {kq6d12e{1'b0}};            yz1701c<= {kq6d12e{1'b0}};         end else begin            dm5821e <= shfd6af;            kf8798<= vif4012;            xy1e620<= uk497;            ie98817<= cb125c5;            ls205c0<= wy97161;            yz1701c<= fac5843;         end      end   end   always @(posedge clk or negedge rstn) begin      if(!rstn) begin         anbe9af <= {thc8175{1'b0}};         aaa6be3<= {thc8175{1'b0}};         rvaf8cb<= {thc8175{1'b0}};         the32fa<= {thc8175{1'b0}};         gocbeb7<= {thc8175{1'b0}};         doedf0<= {thc8175{1'b0}};      end else if(ofe284f) begin         if(do1427d) begin            anbe9af <= {thc8175{1'b0}};            aaa6be3<= {thc8175{1'b0}};            rvaf8cb<= {thc8175{1'b0}};            the32fa<= {thc8175{1'b0}};            gocbeb7<= {thc8175{1'b0}};            doedf0<= {thc8175{1'b0}};         end else begin            anbe9af <= db84acd;            aaa6be3<= blcdec0;            rvaf8cb<= ld7b03c;            the32fa<= nec0f3f;            gocbeb7<= yz3cfdc;            doedf0<= je3f72d;         end      end   end   if(KERNEL=="NEAREST" || KERNEL=="BILINEAR") begin      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            kqfadc6[0] <= {CWIDTH{1'b0}};            kqfadc6[1] <= {CWIDTH{1'b0}};         end else if(ofe284f) begin            if(do1427d) begin               kqfadc6[0] <= {CWIDTH{1'b0}};               kqfadc6[1] <= {CWIDTH{1'b0}};            end else begin               kqfadc6[0] <= vif4012;               if(vif4012==0) begin                  kqfadc6[1] <= (1<<CWIDTH) - 1;               end else begin                  kqfadc6[1] <= (1<<CWIDTH) - {1'b0,vif4012};               end            end         end      end      assign wwc1c7c = {kqfadc6[1],kqfadc6[0]};   end else if(SHARE_CMEM=="FALSE") begin      if(CBANKS==1) begin : rvc45c         assign oub3d59  = (ld4f0d0=="EBR") ? shfd6af : vif4012;         if(ld4f0d0=="EBR") begin : tw11730            pmi_rom #(                      .pmi_addr_depth        (1<<thc8175    ),                      .pmi_addr_width        (thc8175       ),                      .pmi_data_width        (fce8a2    ),                      .pmi_regmode           ("reg"         ),                      .pmi_gsr               ("disable"     ),                      .pmi_resetmode         ("sync"        ),                      .pmi_init_file         (yk68275    ),                      .pmi_init_file_format  ("binary"      ),                      .pmi_family            (FAMILY        ),                      .module_type          ("pmi_rom"     ))            ng1e192 (.Address      (oub3d59  ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end else begin : zz917c0            pmi_distributed_rom #(                      .pmi_addr_depth       (1<<thc8175    ),                      .pmi_addr_width       (thc8175       ),                      .pmi_data_width       (fce8a2    ),                      .pmi_regmode          ("reg"         ),                      .pmi_init_file        (yk68275    ),                      .pmi_init_file_format ("binary"      ),                      .pmi_family           (FAMILY        ),                      .module_type          ("pmi_distributed_rom"))            ng1e192 (.Address      (oub3d59  ),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end      end else begin : ph6878         if(KERNEL=="CUSTOM") begin            assign zzb59e5 = blf67f0[jp5a0b1-1:0];            assign oub3d59     = (ld4f0d0=="EBR") ? shfd6af : vif4012;         end else if(ADAPTIVE=="FALSE") begin            assign zzb59e5 = bn9b2f7[jp5a0b1-1:0];            assign oub3d59     = (ld4f0d0=="EBR") ? shfd6af : vif4012;         end else begin                        assign oub3d59     = shfd6af;             assign zzb59e5 = (cze2943==1'b1) ? bn9b2f7[jp5a0b1-1:0] : 0;         end         bld78ec_Scaler #( .fa66a78      (DWIDTH     ),                        .qv1d9c7        (ho79558),                        .shc3438  (NUM_PLANE  ),                        .YCBCR422    (YCBCR422   ),                        .YCBCR444    (YCBCR444   ),                        .uk87d73     ("TRUE"     ),                        .EDGE_TH     (EDGE_TH    ))         en51f59       ( .clk         (clk        ),                        .rstn        (rstn       ),                        .ce          (ofe284f         ),                        .sr          (do1427d         ),                        .dvalid_in   (1'b1       ),                        .din         (db84acd      ),                        .yzbb3a0      (ukacf2f  ));         if(ld4f0d0=="EBR") begin : tw11730            pmi_rom #(                      .pmi_addr_depth        (1<<(thc8175+jp5a0b1)),                      .pmi_addr_width        (thc8175+jp5a0b1     ),                      .pmi_data_width        (fce8a2    ),                      .pmi_regmode           ("reg"         ),                      .pmi_gsr               ("disable"     ),                      .pmi_resetmode         ("sync"        ),                      .pmi_init_file         (yk68275    ),                      .pmi_init_file_format  ("binary"      ),                      .pmi_family            (FAMILY        ),                      .module_type          ("pmi_rom"     ))            ng1e192 (.Address      ({zzb59e5,oub3d59}),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end else begin : zz917c0            pmi_distributed_rom #(                      .pmi_addr_depth       (1<<(thc8175+jp5a0b1)),                      .pmi_addr_width       (thc8175+jp5a0b1     ),                      .pmi_data_width
       (fce8a2    ),                      .pmi_regmode          ("reg"         ),                      .pmi_init_file        (yk68275    ),                      .pmi_init_file_format ("binary"      ),                      .pmi_family           (FAMILY        ),                      .module_type          ("pmi_distributed_rom"))            ng1e192 (.Address      ({zzb59e5,oub3d59}),                   .OutClock     (clk        ),                   .OutClockEn   (ce         ),                   .Reset        (~rstn      ),                   .Q            (wwc1c7c   ));         end      end   end
endgenerate
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};icff004<=sud1e18[3];uvf8021<=sud1e18[4];wyacd21<={sw3b0ee>>1,sud1e18[5]};czd6dba<={ir8ff4f>>1,sud1e18[6]};blf67f0<={ph8ed50>>1,sud1e18[7]};bn9b2f7<={th4ab8e>>1,sud1e18[8]};wjd97be<=sud1e18[9];nrf30e7<={zxfc559>>1,sud1e18[10]};co9873f<=sud1e18[11];jr3cde<={kdc615b>>1,sud1e18[12]};db84acd<={wje26be>>1,sud1e18[13]};th5a83e<={ir856eb>>1,sud1e18[14]};blcdec0<={anbe9af>>1,sud1e18[15]};ld7b03c<={aaa6be3>>1,sud1e18[16]};nec0f3f<={rvaf8cb>>1,sud1e18[17]};yz3cfdc<={the32fa>>1,sud1e18[18]};je3f72d<={gocbeb7>>1,sud1e18[19]};lddd12a<={doedf0>>1,sud1e18[20]};cze8957<={dm76f82>>1,sud1e18[21]};mr44abc<={xyb7c12>>1,sud1e18[22]};xy255e5<=sud1e18[23];by5795b<={sw824a8>>1,sud1e18[24]};ukbcadb<=sud1e18[25];wy2b6c9<={uv4186b>>1,sud1e18[26]};kqdb244<={rt6bbb4>>1,sud1e18[27]};qtc9105<={ls3a6aa>>1,sud1e18[28]};dm4882c<=sud1e18[29];ng20b1c<={byd54e5>>1,sud1e18[30]};ls9c528<={zzb59e5>>1,sud1e18[31]};cze2943<=sud1e18[32];shfd6af<={tw2014a>>1,sud1e18[33]};jcda376<=sud1e18[34];god1bb2<=sud1e18[35];ec8dd90<=sud1e18[36];an8fcc3<=sud1e18[37];pffc43f<=sud1e18[38];uve21fe<=sud1e18[39];gqfd2d<=sud1e18[40];byf4b46<=sud1e18[41];tw3fd00<=sud1e18[42];vif4012<={dm5821e>>1,sud1e18[43]};uk497<={kf8798>>1,sud1e18[44]};cb125c5<={xy1e620>>1,sud1e18[45]};wy97161<={ie98817>>1,sud1e18[46]};fac5843<={ls205c0>>1,sud1e18[47]};fn610dd<={yz1701c>>1,sud1e18[48]};kf86ef<=sud1e18[49];go4377c<=sud1e18[50];ba1bbe1<=sud1e18[51];blddf0b<=sud1e18[52];ls14a1d<=sud1e18[53];dm7c2f1<={vx225b3>>1,sud1e18[54]};dobc53<={oub3d59>>1,sud1e18[55]};wl8f384<={wwc1c7c>>1,sud1e18[56]};cm53515<={vi4710f>>1,sud1e18[57]};qgd4545<={cmc43df>>1,sud1e18[58]};lsa2a29<={qi21ef8>>1,sud1e18[59]};twa8a59<={th7be01>>1,sud1e18[60]};yz29656<={gbf8072>>1,sud1e18[61]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=dvalid_in;ec1a3c3[2040]<=frmsync_in;ec1a3c3[2032]<=sw3b0ee[0];ec1a3c3[2017]<=ir8ff4f[0];ec1a3c3[1987]<=ph8ed50[0];ec1a3c3[1963]<=vx3912;ec1a3c3[1950]<=xy1e620[0];ec1a3c3[1926]<=th4ab8e[0];ec1a3c3[1878]<=ph1c896;ec1a3c3[1853]<=ie98817[0];ec1a3c3[1839]<=do898ad;ec1a3c3[1818]<=cbbe092;ec1a3c3[1804]<=vx9571;ec1a3c3[1708]<=yk67978;ec1a3c3[1707]<=shd3553;ec1a3c3[1663]<=th7be01[0];ec1a3c3[1658]<=ls205c0[0];ec1a3c3[1630]<=go4c56b;ec1a3c3[1614]<=aaa6be3[0];ec1a3c3[1589]<=sw824a8[0];ec1a3c3[1561]<=zxfc559[0];ec1a3c3[1511]<=dm5821e[0];ec1a3c3[1483]<=ri30a16;ec1a3c3[1439]<=cmc43df[0];ec1a3c3[1394]<=do9cc28;ec1a3c3[1383]<=wwc1c7c[0];ec1a3c3[1372]<=ukacf2f;ec1a3c3[1369]<=vx225b3[0];ec1a3c3[1367]<=byd54e5[0];ec1a3c3[1279]<=gbf8072[0];ec1a3c3[1269]<=yz1701c[0];ec1a3c3[1251]<=doedf0[0];ec1a3c3[1212]<=tj9e1ad;ec1a3c3[1180]<=rvaf8cb[0];ec1a3c3[1130]<=ux12541;ec1a3c3[1074]<=wje2ace;ec1a3c3[1023]<=ce;ec1a3c3[981]<=zkc0722;ec1a3c3[975]<=kf8798[0];ec1a3c3[919]<=lq63f15;ec1a3c3[909]<=xyb7c12[0];ec1a3c3[853]<=ls3a6aa[0];ec1a3c3[831]<=qi21ef8[0];ec1a3c3[807]<=anbe9af[0];ec1a3c3[755]<=ngad608;ec1a3c3[741]<=nre6142;ec1a3c3[719]<=vi4710f[0];ec1a3c3[697]<=tw2014a[0];ec1a3c3[691]<=oub3d59[0];ec1a3c3[686]<=zzb59e5[0];ec1a3c3[625]<=gocbeb7[0];ec1a3c3[490]<=twb80e4;ec1a3c3[454]<=dm76f82[0];ec1a3c3[426]<=rt6bbb4[0];ec1a3c3[403]<=ir856eb[0];ec1a3c3[377]<=pu86b71;ec1a3c3[312]<=the32fa[0];ec1a3c3[213]<=uv4186b[0];ec1a3c3[201]<=wje26be[0];ec1a3c3[100]<=kdc615b[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module kf9f8b9_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  din, 
                  dvalid_in, 
                  frmsync_in, 
                  sw3b0ee,
                  ph8ed50,
                  vx9571,
                  zx40d74,
                  zxdde4e,
                  dout, 
                  dvalid_out, 
                  frmsync_out);
parameter   SCALER_NAME    = "SCALER";
parameter   NUM_PLANE      = 3;
parameter   ldd76ac       = 1;
parameter   VINWIDTH       = 320;
parameter   VOUTWIDTH      = 320;
parameter   KERNEL         = "LANCZOS";
parameter   HFTAPS         = 4;
parameter   HFPHASES       = 256;
parameter   EDGEMODE       = "COPY";
parameter   EDGEVALUE      = 0;
parameter   DWIDTH         = 8;
parameter   CWIDTH         = 8;
parameter   DTYPE          = "SIGNED";
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   ADAPTIVE       = "FALSE";
parameter   CBANKS         = 1;
parameter   EDGE_TH        = 8;
parameter   RESAMPLE       = "AVERAGE";
parameter   an12cda        = 8;
parameter   SHARE_CMEM     = "TRUE";
parameter   ld4f0d0        = "EBR";
parameter   FAMILY         = "ECP2M";
localparam  ho79558    = (YCBCR422=="TRUE") ? (HFTAPS-4) : HFTAPS;
localparam  ww46ecd        = DWIDTH*NUM_PLANE;
localparam  kq6d12e     = ho79558*ww46ecd;
localparam  fce8a2     = ho79558*CWIDTH;
localparam  zxc2622      = (ldd76ac==1) ? 1 : ntc03e(ldd76ac-1);
localparam  jp617b9        = ldd76ac*(HFTAPS+1);
localparam  ls30659         = (PARALLEL=="TRUE") ? 1 : 2;
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input      [ww46ecd-1:0]   din;
input                      dvalid_in;
input                      frmsync_in;
input      [an12cda-1:0]   sw3b0ee;
input              [1:0]   ph8ed50;
input                      vx9571;
output  [fce8a2-1:0]   zx40d74;
output  [fce8a2-1:0]   zxdde4e;
output  [kq6d12e-1:0]   dout;
output                     frmsync_out;
output                     dvalid_out;
reg        [ww46ecd-1:0]   nr716c0[2:0];
reg                [2:0]   ls14530;
reg                [2:0]   yz2df4;
reg        [an12cda-1:0]   kdc615b[2:0];
wire        [DWIDTH-1:0]   dmf49d4;
wire                       cba4ea3;
reg         [DWIDTH-1:0]   dzd81bc[jp617b9-1:0];
reg         [DWIDTH-1:0]   mg5b2a[jp617b9-1:0];
reg         [DWIDTH-1:0]   qi3bd8c[jp617b9-1:0];
wire                       pu86b71;
wire                       go4c56b;
wire                       do898ad;
wire                       lq63f15;
wire                       ri30a16;
wire                       nre6142;
wire                       do9cc28;
wire                       tj9e1ad;
reg                        twb80e4;
reg                [2:0]   lfbab28;
reg                        ph1c896;
reg                        ieaca32;
wire               [2:0]   ir8ff4f;
wire                       jr28c85;
genvar tj1c509,mt81ae,bae513;
reg ofe284f;
reg do1427d;
reg [ww46ecd - 1 : 0] lq5df83;
reg icff004;
reg uvf8021;
reg [an12cda - 1 : 0] wyacd21;
reg [1 : 0] blf67f0;
reg wjd97be;
reg [2 : 0] rgcf383;
reg [2 : 0] kqce536;
reg [DWIDTH - 1 : 0] db94d88;
reg gqa6c46;
reg byf4b46;
reg uve21fe;
reg pffc43f;
reg an8fcc3;
reg ec8dd90;
reg god1bb2;
reg jcda376;
reg gqfd2d;
reg kf86ef;
reg [2 : 0] go492fe;
reg blddf0b;
reg gb4bf80;
reg [2 : 0] czd6dba;
reg psfe027;
reg [2047:0] ec1a3c3;
wire [25:0] sud1e18;
localparam yz8f0c0 = 26,su78605 = 32'hfdffc70b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
assign pu86b71           = wyacd21[0];
assign go4c56b     = wyacd21[1];
assign do898ad   = wyacd21[2];
assign lq63f15         = wyacd21[3];
assign ri30a16          = wyacd21[4];
assign nre6142          = wyacd21[5];
assign do9cc28          = wyacd21[6];
assign tj9e1ad       = wyacd21[7];
generate   if(PARALLEL=="TRUE") begin      always @(posedge clk or negedge rstn) begin         twb80e4 <= 1'b1;      end   end else begin       always @(posedge clk or negedge rstn) begin         if(!rstn) begin            twb80e4 <= 1'b0;         end else if(ofe284f) begin            if(do1427d) begin               twb80e4 <= 1'b0;            end else if(pffc43f) begin               twb80e4 <= 1'b0;            end else if(icff004) begin               twb80e4   <= ~kf86ef;            end         end      end   end
endgenerate
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      nr716c0[0] <= {ww46ecd{1'b0}};      nr716c0[1] <= {ww46ecd{1'b0}};      nr716c0[2] <= {ww46ecd{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         nr716c0[0] <= {ww46ecd{1'b0}};         nr716c0[1] <= {ww46ecd{1'b0}};         nr716c0[2] <= {ww46ecd{1'b0}};      end else begin         nr716c0[0] <= lq5df83;         nr716c0[1] <= nr716c0[0];         nr716c0[2] <= nr716c0[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ls14530[0] <= 1'b0;      ls14530[1] <= 1'b0;      ls14530[2] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ls14530[0] <= 1'b0;         ls14530[1] <= 1'b0;         ls14530[2] <= 1'b0;      end else begin         ls14530[0] <= uvf8021;         ls14530[1] <= rgcf383[0];         ls14530[2] <= rgcf383[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      yz2df4[0] <= 1'b0;      yz2df4[1] <= 1'b0;      yz2df4[2] <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         yz2df4[0] <= 1'b0;         yz2df4[1] <= 1'b0;         yz2df4[2] <= 1'b0;      end else begin         yz2df4[0] <= icff004;         yz2df4[1] <= kqce536[0];         yz2df4[2] <= kqce536[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      kdc615b[0] <= {an12cda{1'b0}};      kdc615b[1] <= {an12cda{1'b0}};      kdc615b[2] <= {an12cda{1'b0}};   end else if(ofe284f) begin      if(do1427d) begin         kdc615b[0] <= {an12cda{1'b0}};         kdc615b[1] <= {an12cda{1'b0}};         kdc615b[2] <= {an12cda{1'b0}};      end else begin         kdc615b[0] <= wyacd21;         kdc615b[1] <= kdc615b[0];         kdc615b[2] <= kdc615b[1];      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ph1c896 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ph1c896 <= 1'b0;      end else if(pffc43f) begin         ph1c896 <= 1'b0;      end else if(icff004 && (kf86ef==1'b1)) begin         ph1c896   <= ~blddf0b;      end   end
end
always @(posedge clk or negedge rstn) begin   if(!rstn) begin      ieaca32 <= 1'b0;   end else if(ofe284f) begin      if(do1427d) begin         ieaca32 <= 1'b0;      end else if(icff004 && (kf86ef==1'b1)) begin         ieaca32 <= blddf0b;      end   end
end
assign dmf49d4   = (PARALLEL=="TRUE") ? (lq5df83>>DWIDTH) : lq5df83[DWIDTH-1:0];
assign cba4ea3 = (PARALLEL=="TRUE") ? (gb4bf80 & icff004) : (gb4bf80 & icff004 & kf86ef);
lq52079_Scaler #(.DWIDTH (DWIDTH        ),                .oub64db   (DTYPE         ))
ep90d45     (.clk    (clk           ),                .rstn   (rstn          ),                .ce     (ofe284f            ),                .sr     (do1427d            ),                .xwcabca     (gqa6c46       ),                .jp55e52      (db94d88         ),                .fpaf296      (dzd81bc[0]         ),                .jc794b6      (dzd81bc[1]         ),                .xwca5b2    (jr28c85      ),                .lq52d93    (ir8ff4f      ));
generate   for(tj1c509=0;tj1c509<HFTAPS+1;tj1c509=tj1c509+1) begin :xy3a6a0      always @(posedge clk or negedge rstn) begin         if(!rstn) begin            dzd81bc[tj1c509] <= {DWIDTH{1'b0}};         end else if(ofe284f == 1'b1) begin            if(do1427d == 1'b1) begin               dzd81bc[tj1c509] <= {DWIDTH{1'b0}};            end else if(PARALLEL=="TRUE") begin               if(icff004) begin                  if(tj1c509==0) begin                     dzd81bc[0] <= lq5df83>>DWIDTH;                  end else begin                     dzd81bc[tj1c509] <= dzd81bc[tj1c509-1];                  end               end            end else if(PARALLEL=="FALSE") begin               if(icff004 && kf86ef) begin                  if(tj1c509==0) begin                     dzd81bc[0] <= lq5df83[DWIDTH-1:0];                  end else begin                     dzd81bc[tj1c509] <= dzd81bc[tj1c509-1];                  end               end            end         end      end   end
endgenerate
gq158f0_Scaler #(               .SCALER_NAME   (SCALER_NAME   ),               .NUM_PLANE     (NUM_PLANE     ),               .ldd76ac      (ldd76ac      ),               .VINWIDTH      (VINWIDTH      ),               .VOUTWIDTH     (VOUTWIDTH     ),               .KERNEL        (KERNEL        ),               .HFTAPS        (HFTAPS        ),               .HFPHASES      (HFPHASES      ),               .EDGEMODE      (EDGEMODE      ),               .EDGEVALUE     (EDGEVALUE     ),               .DWIDTH        (DWIDTH        ),               .CWIDTH        (CWIDTH        ),               .DTYPE         (DTYPE         ),               .PARALLEL      (PARALLEL      ),               .YCBCR422      (YCBCR422      ),               .YCBCR444      (YCBCR444      ),               .ADAPTIVE      (ADAPTIVE      ),               .CBANKS        (CBANKS        ),               .EDGE_TH       (EDGE_TH       ),               .RESAMPLE      (RESAMPLE      ),               .SHARE_CMEM    (SHARE_CMEM    ),               .ld4f0d0       (ld4f0d0       ),               .an12cda       (an12cda       ),               .FAMILY        (FAMILY        ))
alccf9e (                              .clk           (clk           ),               .rstn          (rstn          ),               .ce            (ofe284f            ),               .sr            (do1427d            ),               .din           (nr716c0[ls30659]    ),               .frmsync_in    (rgcf383[ls30659]),               .dvalid_in     (kqce536[ls30659] ),               .sw3b0ee     (kdc615b[ls30659] ),               .ph8ed50         (blf67f0         ),               .vx9571   (wjd97be   ),               .ir8ff4f      (czd6dba      ),                              .zx40d74          (zx40d74          ),               .zxdde4e         (zxdde4e         ),               .dout          (dout          ),               .dvalid_out    (dvalid_out    ),               .frmsync_out   (frmsync_out   ));
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];lq5df83<={din>>1,sud1e18[2]};icff004<=sud1e18[3];uvf8021<=sud1e18[4];wyacd21<={sw3b0ee>>1,sud1e18[5]};blf67f0<={ph8ed50>>1,sud1e18[6]};wjd97be<=sud1e18[7];rgcf383<={ls14530>>1,sud1e18[8]};kqce536<={yz2df4>>1,sud1e18[9]};db94d88<={dmf49d4>>1,sud1e18[10]};gqa6c46<=sud1e18[11];byf4b46<=sud1e18[12];uve21fe<=sud1e18[13];pffc43f<=sud1e18[14];an8fcc3<=sud1e18[15];ec8dd90<=sud1e18[16];god1bb2<=sud1e18[17];jcda376<=sud1e18[18];gqfd2d<=sud1e18[19];kf86ef<=sud1e18[20];go492fe<={lfbab28>>1,sud1e18[21]};blddf0b<=sud1e18[22];gb4bf80<=sud1e18[23];czd6dba<={ir8ff4f>>1,sud1e18[24]};psfe027<=sud1e18[25];end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=din[0];ec1a3c3[2044]<=dvalid_in;ec1a3c3[2040]<=frmsync_in;ec1a3c3[2032]<=sw3b0ee[0];ec1a3c3[2016]<=ph8ed50[0];ec1a3c3[1985]<=vx9571;ec1a3c3[1922]<=ls14530[0];ec1a3c3[1867]<=tj9e1ad;ec1a3c3[1797]<=yz2df4[0];ec1a3c3[1686]<=twb80e4;ec1a3c3[1547]<=dmf49d4[0];ec1a3c3[1490]<=nre6142;ec1a3c3[1324]<=lfbab28[0];ec1a3c3[1200]<=ieaca32;ec1a3c3[1047]<=cba4ea3;ec1a3c3[1023]<=ce;ec1a3c3[933]<=do9cc28;ec1a3c3[745]<=ri30a16;ec1a3c3[706]<=jr28c85;ec1a3c3[600]<=ph1c896;ec1a3c3[372]<=lq63f15;ec1a3c3[353]<=ir8ff4f[0];ec1a3c3[186]<=do898ad;ec1a3c3[93]<=go4c56b;ec1a3c3[46]<=pu86b71;end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
module scaler_core_Scaler(
                  clk,
                  rstn,
                  ce, 
                  sr, 
                  frmsync_in, 
                  dvalid_in, 
                  din, 
                  ready,
                  frm_resync,
                  pclk,
                  pwrite,
                  paddr,
                  pwdat,
                  prdat,
                  dout_enable,
                  fwidth_out,
                  fheight_out,
                  frmsync_out,
                  dvalid_out, 
                  dout)
`ifdef DEVICE_ECP5U
`else
  `ifdef DEVICE_ECP3
  
  `else
    `ifdef DEVICE_ECP2
    
    `else
      `ifdef DEVICE_ECP2M
      
      `else
        `ifdef DEVICE_XP2
        
        `else
        
        `endif
      `endif
    `endif
  `endif
`endif
;
parameter   SCALER_NAME    = "SCALER";
parameter   NUM_PLANE      = 3;
parameter   VINWIDTH       = 720;
parameter   VINHEIGHT      = 576;
parameter   VOUTWIDTH      = 1280;
parameter   VOUTHEIGHT     = 720;
parameter   KERNEL         = "LANCZOS";
parameter   VFTAPS         = 6;
parameter   HFTAPS         = 6;
parameter   VFPHASES       = 256;
parameter   HFPHASES       = 256;
parameter   EDGEMODE       = "COPY";
parameter   EDGEVALUE      = 0;
parameter   VSFACTOR       = 768;
parameter   HSFACTOR       = 720;
parameter   VFCWIDTH       = 20;
parameter   VFCBPWIDTH     = 10;
parameter   HFCWIDTH       = 20;
parameter   HFCBPWIDTH     = 10;
parameter   PARALLEL       = "TRUE";
parameter   YCBCR422       = "TRUE";
parameter   YCBCR444       = "FALSE";
parameter   RESAMPLE       = "AVERAGE";
parameter   DYNAMIC        = "TRUE";
parameter   ADAPTIVE       = "FALSE";
parameter   CBANKS         = 1;
parameter   EDGE_TH        = 8;
parameter   SEPPCLK        = "FALSE";
parameter   DWIDTH         = 8;
parameter   CWIDTH         = 9;
parameter   MOUTWIDTH      = 9;
parameter   DOUTWIDTH      = 8;
parameter   DTYPE          = "UNSIGNED";
parameter   CTYPE          = "SIGNED";
parameter   OTYPE          = "UNSIGNED";
parameter   DIN_POINTS     = 0;
parameter   COEFF_POINTS   = 8;
parameter   DOUT_POINTS    = 0;
parameter   MSB_METHOD     = "SATURATION";
parameter   LSB_METHOD     = "TRUNCATION";
parameter   LBUFFER        = "EBR";
parameter   VCBUFFER       = "EBR";
parameter   HCBUFFER       = "EBR";
parameter   SHARE_CMEM     = "FALSE";
parameter   MULTTYPE       = "DSP";
parameter   HIGHSPEED      = "FALSE";
parameter   PADDRWIDTH     = 4;
parameter   PBUSWIDTH      = 32;
parameter   FAMILY         = "ECP2";
localparam  an178df     = 1;
localparam  vvf9165     = (YCBCR422=="TRUE") ? (HFTAPS+4) : HFTAPS;
localparam  jp61807        = ntc03e(VINWIDTH-1);
localparam  qifb5        = ntc03e(VINHEIGHT-1);
localparam  blf6a60        = ntc03e(VOUTWIDTH-1);
localparam  ic4c1b0        = ntc03e(VOUTHEIGHT-1);
localparam  shc3438     = (PARALLEL=="FALSE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  fp38a11     = (PARALLEL== "TRUE") ? 1 : ((YCBCR422=="TRUE") ? 2 : NUM_PLANE);
localparam  tu66fe4        = (KERNEL!="NEAREST" && KERNEL!="BILINEAR") ? "TRUE" : "FALSE";
localparam  ww46ecd        = shc3438*DWIDTH;
localparam  gdb1c8f        = shc3438*MOUTWIDTH;
localparam  ea4cc3f        = shc3438*DOUTWIDTH;
localparam  cm67a3c     = VFTAPS*ww46ecd;
localparam  by47874     = VFTAPS*CWIDTH;
localparam  thc8175        = ntc03e(HFPHASES-1);
localparam  an12cda        = (SHARE_CMEM=="TRUE") ? (by47874+8) : (thc8175+8);
localparam  gd18b56     = (SHARE_CMEM=="TRUE" ) ? 0 :                             (ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") ? 0 :                             (((YCBCR422=="TRUE" || YCBCR444=="TRUE") ? 3 : 4) +                              ((VCBUFFER=="EBR") ? 1 : 0) + ((LBUFFER=="EBR") ? 1 : 0));
localparam  jcc5ab4      = (SHARE_CMEM=="TRUE" ) ? 0 : (ADAPTIVE=="FALSE" || KERNEL=="CUSTOM") ? 0 :                             (YCBCR444=="TRUE") ? 4 : 5;
input                      clk;
input                      rstn;
input                      ce;
input                      sr;
input                      frmsync_in;
input                      dvalid_in;
input      [ww46ecd-1:0]   din;
output                     ready;
output                     frm_resync;
input                      pclk;
input                      pwrite;
input   [PADDRWIDTH-1:0]   paddr;
input    [PBUSWIDTH-1:0]   pwdat;
output   [PBUSWIDTH-1:0]   prdat;
input                      dout_enable;
output     [blf6a60-1:0]   fwidth_out;
output     [ic4c1b0-1:0]   fheight_out;
output                     frmsync_out;
output                     dvalid_out;
output     [ea4cc3f-1:0]   dout;
wire       [jp61807-1:0]   tudaaf6;
wire       [qifb5-1:0]   ned57b3;
wire       [blf6a60-1:0]   ohabd9b;
wire       [ic4c1b0-1:0]   ip5ecdd;
wire       [VFCWIDTH-1:0]  fnf66ed;
wire       [HFCWIDTH-1:0]  qib376f;
wire               [1:0]   db9bb79;
wire       [jp61807-1:0]   qib93db;
wire       [qifb5-1:0]   bl4f6c5;
wire       [blf6a60-1:0]   cmdb17f;
wire       [ic4c1b0-1:0]   byc5fc6;
wire       [VFCWIDTH-1:0]  al7f19b;
wire       [HFCWIDTH-1:0]  uvc66ed;
wire                       kf3376d;
wire                       fpbf6f1;
wire       [blf6a60-1:0]   fwidth_out;
wire       [ic4c1b0-1:0]   fheight_out;
wire               [1:0]   ip6fd00;
wire    [by47874-1:0]   dmf402e;
wire    [cm67a3c-1:0]   mgb97;
wire                       wy5cb9;
wire                       vx9571;
wire               [1:0]   th4ab8e;
wire                       ec97240;
wire       [an12cda-1:0]   mrc9000;
wire                       xw48004;
wire                       jp40022;
wire       [gdb1c8f-1:0]   ec8b0;
wire       [an12cda-1:0]   nt22c0a;
wire                       xl16057;
wire                       ntb02be;
wire       [ea4cc3f-1:0]   ieafb6;
reg ofe284f;
reg do1427d;
reg uvf8021;
reg icff004;
reg [ww46ecd - 1 : 0] lq5df83;
reg ph1cc72;
reg thf3046;
reg [PADDRWIDTH - 1 : 0] ayc11b9;
reg [PBUSWIDTH - 1 : 0] yk46e45;
reg jc734a2;
reg [jp61807 - 1 : 0] yz8f0cd;
reg [qifb5 - 1 : 0] shc3368;
reg [blf6a60 - 1 : 0] blcda2e;
reg [ic4c1b0 - 1 : 0] ww68bb9;
reg [VFCWIDTH - 1 : 0] ks2ee47;
reg [HFCWIDTH - 1 : 0] cob91c9;
reg [1 : 0] vvc8e48;
reg [jp61807 - 1 : 0] sj3923b;
reg [qifb5 - 1 : 0] tu48ee4;
reg [blf6a60 - 1 : 0] sw3b91b;
reg [ic4c1b0 - 1 : 0] bye46c4;
reg [VFCWIDTH - 1 : 0] xy1b11c;
reg [HFCWIDTH - 1 : 0] suc4716;
reg qv238b0;
reg hoc010c;
reg [1 : 0] ene2c2f;
reg [by47874 - 1 : 0] jrb0bee;
reg [cm67a3c - 1 : 0] pu2fbbd;
reg os7ddeb;
reg wjd97be;
reg [1 : 0] bn9b2f7;
reg hqbd658;
reg [an12cda - 1 : 0] yk59612;
reg aycb091;
reg jc58489;
reg [gdb1c8f - 1 : 0] gd1225f;
reg [an12cda - 1 : 0] ri897e7;
reg mr4bf3a;
reg zx5f9d4;
reg [ea4cc3f - 1 : 0] she753f;
reg [2047:0] ec1a3c3;
wire [39:0] sud1e18;
localparam yz8f0c0 = 40,su78605 = 32'hfdffd14b;
localparam [31:0] shc3028 = su78605;
localparam vic0a2d = su78605 & 4'hf;
localparam [11:0] bn28b58 = 'h7ff;
wire [(1 << vic0a2d) -1:0] vx2d637;
reg [yz8f0c0-1:0] vi58dfe;
reg [vic0a2d-1:0] db37f94 [0:1];
reg [vic0a2d-1:0] vife536;
reg uvf29b3;
integer fp94d9c;
integer wya6ce6;
function [31:0] ntc03e;
input [31:0] value;
for (ntc03e=0; value>0; ntc03e=ntc03e+1) value = value>>1;
endfunction
generate   assign fpbf6f1 = qv238b0;   if(DYNAMIC=="TRUE") begin      assign qib93db   = yz8f0cd;      assign bl4f6c5  = shc3368;      assign cmdb17f   = blcda2e;      assign byc5fc6  = ww68bb9;      assign al7f19b   = ks2ee47;      assign uvc66ed   = cob91c9;      assign ip6fd00      = (KERNEL=="CUSTOM") ? vvc8e48 : 2'b00;   end else begin      assign qib93db   = VINWIDTH-1;      assign bl4f6c5  = VINHEIGHT-1;      assign cmdb17f   = VOUTWIDTH-1;      assign byc5fc6  = VOUTHEIGHT-1;      assign al7f19b   = VSFACTOR;      assign uvc66ed   = HSFACTOR;      assign ip6fd00      = 2'b00;   end
endgenerate
vx662a_Scaler #(               .VFCWIDTH      (VFCWIDTH      ),               .HFCWIDTH      (HFCWIDTH      ),               .VINWIDTH      (VINWIDTH      ),               .VINHEIGHT     (VINHEIGHT     ),               .VOUTWIDTH     (VOUTWIDTH     ),               .VOUTHEIGHT    (VOUTHEIGHT    ),               .VSFACTOR      (VSFACTOR      ),               .HSFACTOR      (HSFACTOR      ),               .KERNEL        (KERNEL        ),               .PADDRWIDTH    (PADDRWIDTH    ),               .PBUSWIDTH     (PBUSWIDTH     ),               .SEPPCLK       (SEPPCLK       ),               .FAMILY        (FAMILY        ))
ir9a4db (                              .pclk          (ph1cc72          ),               .rstn          (rstn          ),               .ce            (ofe284f            ),               .sr            (do1427d            ),               .jc57a13         (uvf8021    ),               .hqbd09b          (clk           ),               .pwrite        (thf3046        ),               .paddr         (ayc11b9         ),               .pwdat         (yk46e45         ),                              .prdat         (prdat         ),               .tudaaf6    (tudaaf6    ),               .ned57b3   (ned57b3   ),               .ohabd9b    (ohabd9b    ),               .ip5ecdd   (ip5ecdd   ),               .fnf66ed    (fnf66ed    ),               .qib376f    (qib376f    ),               .db9bb79       (db9bb79       ),               .rtddbcf      (kf3376d    ));
xl9030_Scaler #(               .SCALER_NAME   (SCALER_NAME   ),               .NUM_PLANE     (NUM_PLANE     ),               .VINWIDTH      (VINWIDTH      ),               .VINHEIGHT     (VINHEIGHT     ),               .VOUTWIDTH     (VOUTWIDTH     ),               .VOUTHEIGHT    (VOUTHEIGHT    ),               .KERNEL        (KERNEL        ),               .VFTAPS        (VFTAPS        ),               .HFTAPS        (vvf9165    ),               .VFPHASES      (VFPHASES      ),               .HFPHASES      (HFPHASES      ),               .PARALLEL      (PARALLEL      ),               .YCBCR422      (YCBCR422      ),               .YCBCR444      (YCBCR444      ),               .ADAPTIVE      (ADAPTIVE      ),               .CBANKS        (CBANKS        ),               .EDGE_TH       (EDGE_TH       ),               .RESAMPLE      (RESAMPLE      ),               .EDGEMODE      (EDGEMODE      ),               .EDGEVALUE     (EDGEVALUE     ),               .VSFACTOR      (VSFACTOR      ),               .HSFACTOR      (HSFACTOR      ),               .VFCWIDTH      (VFCWIDTH      ),               .VFCBPWIDTH    (VFCBPWIDTH    ),               .HFCWIDTH      (HFCWIDTH      ),               .HFCBPWIDTH    (HFCBPWIDTH    ),               .DYNAMIC       (DYNAMIC       ),               .SHARE_CMEM    (SHARE_CMEM    ),               .fa66a78        (DWIDTH        ),               .CWIDTH        (CWIDTH        ),               .LBUFFER       (LBUFFER       ),               .ld4f0d0       (VCBUFFER      ),               .FAMILY        (FAMILY        ))
pfd79ed (                              .clk           (clk           ),               .rstn          (rstn          ),               .ce            (ofe284f            ),               .sr            (do1427d            ),               .frmsync_in    (uvf8021    ),               .dvalid_in     (icff004     ),               .din           (lq5df83           ),               .fpbf6f1    (hoc010c    ),               .vxa03ba      (sj3923b   ),               .hq1dd7     (tu48ee4  ),               .jeeebb      (sw3b91b   ),               .yk775da     (bye46c4  ),               .phbaed1      (xy1b11c   ),               .vvd768e      (suc4716   ),               .ph8ed50         (ene2c2f      ),               .dout_enable   (jc734a2   ),                              .zx40d74          (dmf402e      ),               .dout          (mgb97      ),               .frmsync_out   (wy5cb9   ),               .dvalid_out    (ec97240    ),               .xwee109    (mrc9000    ),               .fwidth_out    (fwidth_out    ),               .fheight_out   (fheight_out   ),               .frm_resync    (frm_resync    ),               .th4ab8e        (th4ab8e        ),               .vx9571   (vx9571   ),               .ready         (ready         ));
uif5969_Scaler #(               .NUM_PLANE     (NUM_PLANE     ),               .DWIDTH        (DWIDTH        ),               .CWIDTH        (CWIDTH        ),               .VFTAPS        (VFTAPS        ),               .KERNEL        (KERNEL        ),               .an178df    (an178df    ),               .DOUTWIDTH     (MOUTWIDTH     ),               .PARALLEL      (PARALLEL      ),               .YCBCR422      (YCBCR422      ),               .YCBCR444      (YCBCR444      ),               .ADAPTIVE      (ADAPTIVE      ),               .EDGE_TH       (EDGE_TH       ),               .DTYPE         (DTYPE         ),               .CTYPE         (CTYPE         ),               .OTYPE         (DTYPE         ),               .DIN_POINTS    (DIN_POINTS    ),               .COEFF_POINTS  (COEFF_POINTS  ),               .DOUT_POINTS   (0             ),                .MSB_METHOD    (MSB_METHOD    ),               .LSB_METHOD    (LSB_METHOD    ),               .tu66fe4       (tu66fe4       ),               .an12cda       (an12cda       ),               .gd18b56    (gd18b56    ),               .jcc5ab4     (jcc5ab4     ),               .MULTTYPE      (MULTTYPE      ),               .HIGHSPEED     (HIGHSPEED     ),               .FAMILY        (FAMILY        ))
sue0991 (                              .clk           (clk           ),               .rstn          (rstn          ),               .ce            (ofe284f            ),               .sr            (do1427d            ),               .tuf19e8           (jrb0bee      ),               .din           (pu2fbbd      ),               .frmsync_in    (os7ddeb   ),               .dvalid_in     (hqbd658    ),               .sw3b0ee     (yk59612    ),                              .dout          (ec8b0       ),               .dvalid_out    (xw48004     ),               .xwee109    (nt22c0a     ),               .frmsync_out   (jp40022    ));
xl13c70_Scaler #(               .SCALER_NAME   (SCALER_NAME   ),               .NUM_PLANE     (NUM_PLANE     ),               .VINWIDTH      (VINWIDTH      ),               .VOUTWIDTH     (VOUTWIDTH     ),               .KERNEL        (KERNEL        ),               .HFTAPS        (HFTAPS        ),               .HFPHASES      (HFPHASES      ),               .EDGEMODE      (EDGEMODE      ),               .EDGEVALUE     (EDGEVALUE     ),               .an178df    (an178df    ),               .DOUTWIDTH     (DOUTWIDTH     ),               .DWIDTH        (MOUTWIDTH     ),               .CWIDTH        (CWIDTH        ),               .PARALLEL      (PARALLEL      ),               .YCBCR422      (YCBCR422      ),               .YCBCR444      (YCBCR444      ),               .ADAPTIVE      (ADAPTIVE      ),               .CBANKS        (CBANKS        ),               .EDGE_TH       (EDGE_TH       ),               .RESAMPLE      (RESAMPLE      ),               .DTYPE         (DTYPE         ),               .CTYPE         (CTYPE         ),               .OTYPE         (OTYPE         ),               .DIN_POINTS    (DIN_POINTS    ),               .COEFF_POINTS  (COEFF_POINTS  ),               .DOUT_POINTS   (DOUT_POINTS   ),               .MSB_METHOD    (MSB_METHOD    ),               .LSB_METHOD    (LSB_METHOD    ),               .tu66fe4       (tu66fe4       ),               .an12cda       (an12cda       ),               .SHARE_CMEM    (SHARE_CMEM    ),               .MULTTYPE      (MULTTYPE      ),               .HIGHSPEED     (HIGHSPEED     ),               .ld4f0d0       (HCBUFFER      ),               .FAMILY        (FAMILY        ))
vk3f229 (                              .clk           (clk           ),               .rstn          (rstn          ),               .ce            (ofe284f            ),               .sr            (do1427d            ),               .din           (gd1225f       ),               .frmsync_in    (jc58489    ),               .dvalid_in     (aycb091     ),               .sw3b0ee     (ri897e7     ),               .ph8ed50         (ene2c2f      ),               .th4ab8e        (bn9b2f7        ),               .vx9571   (wjd97be   ),                              .dout          (ieafb6       ),               .dvalid_out    (xl16057     ),               .frmsync_out   (ntb02be    ));
assign dout        = she753f;
assign dvalid_out  = mr4bf3a;
assign frmsync_out = zx5f9d4;
always@* begin ofe284f<=sud1e18[0];do1427d<=sud1e18[1];uvf8021<=sud1e18[2];icff004<=sud1e18[3];lq5df83<={din>>1,sud1e18[4]};ph1cc72<=sud1e18[5];thf3046<=sud1e18[6];ayc11b9<={paddr>>1,sud1e18[7]};yk46e45<={pwdat>>1,sud1e18[8]};jc734a2<=sud1e18[9];yz8f0cd<={tudaaf6>>1,sud1e18[10]};shc3368<={ned57b3>>1,sud1e18[11]};blcda2e<={ohabd9b>>1,sud1e18[12]};ww68bb9<={ip5ecdd>>1,sud1e18[13]};ks2ee47<={fnf66ed>>1,sud1e18[14]};cob91c9<={qib376f>>1,sud1e18[15]};vvc8e48<={db9bb79>>1,sud1e18[16]};sj3923b<={qib93db>>1,sud1e18[17]};tu48ee4<={bl4f6c5>>1,sud1e18[18]};sw3b91b<={cmdb17f>>1,sud1e18[19]};bye46c4<={byc5fc6>>1,sud1e18[20]};xy1b11c<={al7f19b>>1,sud1e18[21]};suc4716<={uvc66ed>>1,sud1e18[22]};qv238b0<=sud1e18[23];hoc010c<=sud1e18[24];ene2c2f<={ip6fd00>>1,sud1e18[25]};jrb0bee<={dmf402e>>1,sud1e18[26]};pu2fbbd<={mgb97>>1,sud1e18[27]};os7ddeb<=sud1e18[28];wjd97be<=sud1e18[29];bn9b2f7<={th4ab8e>>1,sud1e18[30]};hqbd658<=sud1e18[31];yk59612<={mrc9000>>1,sud1e18[32]};aycb091<=sud1e18[33];jc58489<=sud1e18[34];gd1225f<={ec8b0>>1,sud1e18[35]};ri897e7<={nt22c0a>>1,sud1e18[36]};mr4bf3a<=sud1e18[37];zx5f9d4<=sud1e18[38];she753f<={ieafb6>>1,sud1e18[39]};end
always@* begin ec1a3c3[2047]<=sr;ec1a3c3[2046]<=frmsync_in;ec1a3c3[2044]<=dvalid_in;ec1a3c3[2040]<=din[0];ec1a3c3[2033]<=pclk;ec1a3c3[2019]<=pwrite;ec1a3c3[1990]<=paddr[0];ec1a3c3[1981]<=mgb97[0];ec1a3c3[1965]<=mrc9000[0];ec1a3c3[1939]<=bl4f6c5[0];ec1a3c3[1933]<=pwdat[0];ec1a3c3[1914]<=wy5cb9;ec1a3c3[1883]<=xw48004;ec1a3c3[1831]<=cmdb17f[0];ec1a3c3[1819]<=dout_enable;ec1a3c3[1785]<=ieafb6[0];ec1a3c3[1781]<=vx9571;ec1a3c3[1778]<=qib376f[0];ec1a3c3[1719]<=jp40022;ec1a3c3[1615]<=byc5fc6[0];ec1a3c3[1591]<=tudaaf6[0];ec1a3c3[1515]<=th4ab8e[0];ec1a3c3[1508]<=db9bb79[0];ec1a3c3[1470]<=xl16057;ec1a3c3[1391]<=ec8b0[0];ec1a3c3[1271]<=fpbf6f1;ec1a3c3[1182]<=al7f19b[0];ec1a3c3[1135]<=ned57b3[0];ec1a3c3[1023]<=ce;ec1a3c3[990]<=dmf402e[0];ec1a3c3[982]<=ec97240;ec1a3c3[969]<=qib93db[0];ec1a3c3[892]<=ntb02be;ec1a3c3[889]<=fnf66ed[0];ec1a3c3[735]<=nt22c0a[0];ec1a3c3[635]<=kf3376d;ec1a3c3[495]<=ip6fd00[0];ec1a3c3[444]<=ip5ecdd[0];ec1a3c3[317]<=uvc66ed[0];ec1a3c3[222]<=ohabd9b[0];end         assign vx2d637 = ec1a3c3,sud1e18 = vi58dfe; initial begin fp94d9c = $fopen(".fred"); $fdisplay( fp94d9c, "%3h\n%3h", (shc3028 >> 4) & bn28b58, (shc3028 >> (vic0a2d+4)) & bn28b58 ); $fclose(fp94d9c); $readmemh(".fred", db37f94); end always @ (vx2d637) begin vife536 = db37f94[1]; for (wya6ce6=0; wya6ce6<yz8f0c0; wya6ce6=wya6ce6+1) begin vi58dfe[wya6ce6] = vx2d637[vife536]; uvf29b3 = ^(vife536 & db37f94[0]); vife536 = {vife536, uvf29b3}; end end 
endmodule
